数据结构算法
文章平均质量分 51
Goodbye ideal
互相学习
展开
-
java实现堆排序
⑨此时的堆不是大顶堆需要重现构建,此时index=0,0号位置小于其孩子节点的值,左右子树进行计较之后发现右子树更大,所以和右子树进行交换。⑥此时的堆不是大顶堆需要重现构建,此时index=1,1号位置大于其孩子节点的值,所以index-1,此时index=0。N[i]的左节点N[2i+1]N[i]的右节点N[2i+2]N[i]的父节点N[(i-1)/2)]④接下来index减2,他有和兄弟节点进行对比,发现它比兄弟节点大,还比父节点大,那么它和父节点进行交换。...原创 2022-07-21 10:58:13 · 1911 阅读 · 0 评论 -
java实现基数排序
我们回想一下我们小时候是怎么学习比较数字大小的?我们是先个位数,如果一个位数比另一个位数多,那这个数肯定更大。如果位数同样多,就按位数递减依次往下进行比较,哪个数在这一位上更大那就停止比较,得出这个在这个位上数更大的数字整体更大的结论。...原创 2022-07-21 10:45:56 · 243 阅读 · 0 评论 -
java实现快速排序
java实现快速排序原创 2022-07-12 08:17:44 · 974 阅读 · 0 评论 -
java实现冒泡排序
基本原理:每一趟只能确定将一个数归位。即第一趟只能确定将末位上的数归位,第二趟只能将倒数第 2 位上的数归位,依次类推下去。如果有 n 个数进行排序,只需将 n-1 个数归位,也就是要进行 n-1 趟操作。而 “每一趟 ” 都需要从第一位开始进行相邻的两个数的比较,将较大的数放后面,比较完毕之后向后挪一位继续比较下面两个相邻的两个数大小关系,重复此步骤,直到最后一个还没归位的数。之所以叫做冒泡排序,因为每一个元素都可以像小气泡一样,根据自身大小一点一点向数组的一侧移动。 代码实现:...原创 2022-07-11 23:38:55 · 759 阅读 · 0 评论