java算法
经典排序算法 java实现
新疆嘉博智选科技有限公司
这个作者很懒,什么都没留下…
展开
-
归并排序(Java)
归并排序的实现说明都在注释里,这里就直接贴代码里。原创 2023-12-07 22:38:10 · 366 阅读 · 0 评论 -
插入排序(Java)
最好情况:序列已经是升序排列了,在这种情况下,需要进行的比较操作需(n-1)次即可。如果目标是把n个元素的序列升序排列,那么采用插入排序存在最好情况和最坏情况如下。最坏情况:序列是降序排列,那么此时需要进行的比较共有n(n-1)/2次。i和j,每一次执行这个回圈,就会将第i个数字放到左边恰当的位置去。4、重复步骤3,直到找到已排序的元素小于或者大于新元素的位置。2、取出下一个元素,在已经排序的元素序列中从后向前扫描。直接插入排序属于稳定的排序,最坏时间复杂度为O(n^2),5、将新元素插入到该位置。原创 2023-12-07 22:34:20 · 485 阅读 · 0 评论 -
冒泡排序的几种实现(直接源码)
算法专栏主要是实操类源码,都是跑的通的代码,复制即可用,代码都是简单通俗的实现,没有做复杂的封装,易于学习算法的思维逻辑。原创 2023-11-29 23:12:55 · 349 阅读 · 0 评论 -
Java算法之桶排序
桶排序介绍和算法步骤看注释,这里就直接上代码了。原创 2023-11-29 23:07:07 · 384 阅读 · 0 评论 -
Java快速排序
对于{5,7,6,1,9,10,4,2,3,8}这个数组,第一次排序我们的Flag是5,我们分别从数组的左右两端开始“探测”。* 数组被划分为两个区,Flag左边是小于Flag的{4,3,2,1},Flag右边是大于Flag的{10,9,6,7,8}。* 假设我们现在要对{5,7,2,1,9,10,4,6,3,8}这个数组进行快速排序,我们应该怎么怎么做呢?* 将3和7交换,数组变为{5,3,2,1,9,10,4,6,7,8}。* 第二次交换结束后数组变为{5,3,2,1,4,10,9,6,7,8}。原创 2023-11-05 23:07:43 · 40 阅读 · 0 评论