算法
文章平均质量分 66
人良爱编程
一个爱记录的人:poolbee.top
展开
-
冒泡算法的思路及改进
来判断本次是否进入了if(),若进入了,进行if(sorted),继续执行外循环遍历短了一次的数组;若本次未进入,则代表此次的遍历的元素的后方元素都是大于它的,继续执行外循环遍历短了一次的数组;之后要让所有元素都排序,需要每次排序的长度递减,array.length是在不断变化的。增加一个boolean类型的sorted,假定本次对前面的元素比较都是升序的。理解数组长度为n是的下标[0]和for循环次数和<、<=,>、>=之间的关系。增加for循环,进行递减。原创 2023-11-18 18:29:03 · 179 阅读 · 1 评论 -
排序算法的稳定性(Stability)和原地算法(In-place Algorithm)
排序前:5,1,3a,4,7,3b稳定的排序:1,3a,3b,4,5,7不稳定的排序: 1,3b,3a,4,5,7相对位置保持不变。原创 2023-11-18 18:25:05 · 147 阅读 · 1 评论 -
一个关于鸡的基础算法——穷举法(枚举法)心得
介绍了算法入门篇的基础数学问题,对最大公约数(欧几里得算法),百钱百鸡问题,完美立方等式的应用问题,做了基本介绍和提出了解决方法和心得体会。可以给刚入门算法的同学提供解决问题的思路,欢迎大家交流。对于穷举法(枚举法)最常用的是for循环嵌套方法,通过四个问题的求解,也让我对时间复杂度的了解更加深入,将从以下两个问题来解释:1.为什么不使用时间单位来表示时间复杂度?答:时间复杂度的表示是没有用任何具体的单位时间来表示的;原创 2023-04-09 20:08:16 · 447 阅读 · 0 评论