03 2021 档案
摘要:希尔排序分为希尔交换排序和希尔移位排序两种方式,其中希尔移位排序的方法会有更高的效率 以排序8个为例 算法思路是首先将数组元素个数/2(8/2=4)得到增量值4(若元素个数为奇数其实也不要紧,这里是向下取整,若是9个元素即9/2=4),定义两个指针,位置一个是在arr[0],一个是在arr[0+4]
阅读全文
摘要:算法思路分析 第一个皇后先放在第一行第一列 第二个皇后放在第二行第一列,判断与之前的皇后位置是否冲突,如果冲突,则依次再将其放在第二列,第三列...直至找到一个合适的位置为止 继续放第三个皇后,同第二步一样,依次将其放在第三行的第一列,第二列......一直到第八个皇后也能放在一个不冲突的位置,则算
阅读全文
摘要:问题介绍 这里直接摘抄百度百科的问题介绍 约瑟夫问题是个有名的问题:N个人围成一圈,从第一个开始报数,第M个将被杀掉,最后剩下一个,其余人都将被杀掉。例如N=6,M=5,被杀掉的顺序是:5,4,6,2,3。 在本文的解析中,赋了另外一个初始条件k,即计数是从第k个开始的。 这里以M=2,N=5,k=
阅读全文
摘要:花了半天才终于搞懂这个头插法的原理,最后还是在Visio下面画图弄明白的。。。直接上代码 1 //单链表反转 2 public static void reverseNode(PersonNode head){ 3 //若链表为空,则直接返回 4 if (head.next == null || h
阅读全文
摘要:初学算法被环形数组队列问题折腾了一上午,思来想去终于理清了思路。 1 private int maxsize; //数组的最大容量 2 private int rear; //指向队列最后一个元素的后一个位置 3 private int front; //队列首部,指向队列的第一个元素 4 priv
阅读全文

浙公网安备 33010602011771号