最近在看算法导论,一开始就讲了许多关于各种排序的问题,(原谅我之前只会STL模板库里的sort函数),正好oj上有一个简单排序题,如图: 题意就是将序列排序然后找第k个数就行了,先随便交一发过了之后我觉得我应该学一些别的算法,于是这两天看懂了归并算法然后进行了实现。 归并排序 其实质就是分治,首先考 ...
分类:
编程语言 时间:
2019-09-01 17:03:31
阅读次数:
106
八大排序算法可以说是最好理解以及嘴简单的排序了,回顾的时候就一起记一下: 简单选择排序:可以说是嘴接近人思维的思路,不用考虑机器累不累的一种方式。每一次都从数组中找到最小的元素与第一个元素交换,然后在从第二个元素以后选取最小的。 能看到无论如何都要执行内外两重循环,所以怎样时间复杂度都是O(n^2) ...
分类:
编程语言 时间:
2019-08-30 18:55:49
阅读次数:
78
三种简单排序1:选择排序(从小到达)从第一个数开始一次与后面的数比较,如果后面的数字比前面的数字小,就交换位置,如果不,就继续与下一个数字比较;第一个数字比较完了之后,则开始第二个数字与下面的数字比较,此时第一个位置放的数字是所有数字中最小的vararr=[2,1,3,5,6,4,7,8,9,0];functionxuanze(array){if(array.length<=1){retur
分类:
编程语言 时间:
2019-08-15 17:19:59
阅读次数:
91
键索引计数法 我们先介绍一种适合小整数键的简单排序方法,这是我们将要学习的字符串排序的基础,举个例子,我们希望将全班学生按组分类。如图 姓名 An Br Da Ga Ha Ja Jh Jn Ma 组号 2 3 3 4 1 3 4 3 1 姓名 Mb Mi Mo Ro Sm Ta Ta Tp Wh 组 ...
分类:
编程语言 时间:
2019-07-31 18:37:17
阅读次数:
121
直接插入排序(Straight Insertion Sort)的基本思想是:把n个待排序的元素看成为一个有序表和一个无序表。开始时有序表中只包含1个元素,无序表中包含有n-1个元素,排序过程中每次从无序表中取出第一个元素,将它插入到有序表中的适当位置,使之成为新的有序表,重复n-1次可完成排序过程。... ...
分类:
编程语言 时间:
2019-07-08 00:13:20
阅读次数:
100
冒泡排序 一,介绍 冒泡排序(Bubble Sort)也是一种简单直观的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢"浮"到数列的 ...
分类:
编程语言 时间:
2019-06-28 22:49:29
阅读次数:
142
常见的内部排序算法有:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。用一张图概括: 关于时间复杂度 平方阶 (O(n2)) 排序 各类简单排序:直接插入、直接选择和冒泡排序。 线性对数阶 (O(nlog2n)) 排序 快速排序、堆排序和归并排序; O(n1+§)) ...
分类:
编程语言 时间:
2019-06-14 21:54:58
阅读次数:
155
Description Description 再次出个排序题,题目是这样的,输入一行数字,如果我们把这行数字中的‘5’都看成空格,那么就得到一行用空格分割的若干非负整数(可能有些整数以‘0’开头,这些头部的‘0’应该被忽略掉,除非这个整数就是由若干个‘0’组成的,这时这个整数就是0)。你的任务是: ...
分类:
编程语言 时间:
2019-06-08 13:06:33
阅读次数:
152
Document 员工工号 员工姓名 员工年龄 员工工号 员工姓名 员工年龄 ... ...
分类:
编程语言 时间:
2019-05-23 09:37:03
阅读次数:
577
'; //1.冒泡排序 $time1 = microtime(true); mpsort($testArr); echo '冒泡排序运行'.$dataLen.'次花费时间为:'.(microtime(true) - $time1).''; //2.简单排序 $time1 = microtime(tr... ...
分类:
编程语言 时间:
2019-05-13 17:55:57
阅读次数:
130