
❤『算法学习』
红尘炼炼心
学习一个技术,先想是什么场景下会用到这个技术,它解决了什么问题!
不乱于心,不困于情。不畏将来,不念过往。如此,安好。
以大多数人的努力程度之低,根本轮不到拼天赋。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
算法详情【插入排序】
一、 直接插入排序思想: 将待排序的记录Ri,插入到已排好序的记录表R1, R2 ,…., Ri-1中,得到一个新的、记录数增加1的有序表。 直到所有的记录都插入完为止。设待排序的记录顺序存放在数组R[1…n]中,在排序的某一时刻,将记录序列分成两部分:◆ R[1…i-1]:已排好序的有序部分;◆ R[i…n]:未排好序的无序部分。显然,在刚开始排序时,R[1]是已经排好原创 2017-09-03 20:49:53 · 806 阅读 · 0 评论 -
排序的基本概念和分类
一、 排序的定义 排序:排序是将一批无序的记录(数据)重新排列成按关键字有序的记录序列的过程。 二、 排序的分类 排序的分类:排序分为插入排序、选择排序、交换排序、归并排序四大类,详细分类如下图 七大经典排序:冒泡排序 快速排序 选择排序 堆排序 插入排序 希尔排序 合并排序---> 三、排序的稳定性 稳定排序:对于关键字相等原创 2017-09-03 20:44:21 · 9077 阅读 · 1 评论 -
算法详解【快速排序】
一、 快速排序1. 为什么要学习快速排序快速排序,世界上公认的最快的排序方法,它每趟都能准确定位不止1个元素!当记录量很大的时候,而且杂乱无序时候,适合使用快速排序,因为每趟可以确定不止一个元素的位置,而且呈指数增加,所以特别快! 你一定想做一个效率高的的人,而不是只是完成任务而已。 所以学习快速排序,有很重要的意义,提高排序的速度,考虑算法的效率,做一个高效的程序员。2. 快速排原创 2017-09-03 20:19:13 · 1539 阅读 · 0 评论 -
算法详解【冒泡排序】
一、 最简单排序实现为什么要学习冒泡排序?冒泡排序是经典的排序方法,思想简单,操作容易,算法稳定性好。是排序的基础算法,学习它有很大的必要性。思想:相邻记录比较,如果逆序则交换,这样一趟排序会使最大(最小)的记录落到最后,这称之为一趟排序。N个记录需要N-1趟排序。二、 冒泡排序算法<?phpfunction pao_sort($arr){ $a = 0; //判断循原创 2017-09-03 19:51:27 · 480 阅读 · 0 评论 -
奇偶性[位运算判断方法]
程序中的所有数在计算机内存中都是以二进制的形式储存的。位运算说穿了,就是直接对整数在内存中的二进制位进行操作。这里奇偶性判断采用&符号原创 2017-09-05 10:07:24 · 2534 阅读 · 0 评论 -
算法详情【选择排序】
一、 简单选择排序1.0为什么要学习简单选择排序 简单选择排序是常用的排序,学习交换排序理解交换排序理念,是对其他排序有力的补充。尤其学过交换排序之后,每趟排序都要进行频繁的交换,如何改进,使用选择排序,每趟只是记住位置,最后才交换,每趟最多交换一次。 1.1简单排序算法的思想 思想:选择最小的记录放在第一个位置,在剩下的记录中选择最小的放在第二个位置,依次类推,直到原创 2017-09-03 20:33:05 · 292 阅读 · 0 评论