随笔分类 - 数据结构与算法
摘要:贪心算法 贪心算法,也称贪婪算法的基本思想是逐步获取最优解。 贪心算法在求解最优化问题时,从初始阶段开始,每一个阶段总是做一个使局部最优的贪心选择,不断将问题转化为规模更小的子问题。 也就是说,贪心算法并不从整体最优考虑,它所作出的选择只是在某种意义...
阅读全文
摘要:算法的优化 算法的优化分为全局优化和局部优化两个层次。全局优化也称为结构优化,主要是从基本控制结构优化、算法、数据结构的选择上考虑;局部优化即为代码优化,包括使用尽量小的数据类型、优化表达式、优化赋值语句、优化函数参数、全局变量及宏的使用等内容。 一、全局优化 1.优化算法设计 ...
阅读全文
摘要:简单选择排序一、算法介绍 简单选择排序属于选择类排序,主要动作就是“选择”,简单选择排序采用最简单的选择方式,从头至尾顺序扫描序列,找出最小的一个元素,和第一个元素交换,接着从剩下的元素中继续这种选择和交换,最终使序列有序。二、算法流程 1.从先从原始数组的第一个元素开始,依次和后面的元素比较,如果第一个元素大,就交换,这样就将最小元素换到下标为0的位置上。 2.接着从第二个元素开始,依次和后面的元素比较,再将最小的元素换到下标为1的位置上。 3.以此类推,直到倒数第二个元素和最后一个元素比较完。 示意图如下: 可以推测出,简单选择排序在对N个数据进行排序时,无论原数据是否有序...
阅读全文
摘要:冒泡排序 温故而知新,可以为师已。O(∩_∩)O~ 冒泡排序算法是通过多次比较和交换来实现排序的,其排序流程如下: 1.对数组中的各元素(N个),依次比较相邻的两个元素的大小。 2.如果前面的元素大于后面的元素,就交换这个两个元素。经过第一轮的多次比较排序后,最大的元素到达了它最后的位置。 3.再按同样的方法把剩下的元素逐个进行比较,最后就按从小到大的顺序把数组中的各元素排列好。 即: 第一趟: 第一个和第二个元素比较,第二个和第三个元素比较...直到第N-1个元素和第N个元素比较,此时最大的元素跑到了最后面。比较了N-1次。 第二趟: 第一个和第二个元素比较,第二个和...
阅读全文

浙公网安备 33010602011771号