码迷,mamicode.com
首页 >  
搜索关键字:时间复杂度排序    ( 19个结果
算法的基本概念
1. 算法概念 algorithm:一个计算过程,解决问题的方法 程序设计=数据结构+算法 输入→算法→输出 数据结构就是关系 2. 时间复杂度 用来估计算法运行时间的一个式子,一般来说时间复杂度高的算法比复杂度低的算法慢 2.1 一些例子: 2.2 时间复杂度排序 2.3 快速判断算法复杂度 确定 ...
分类:编程语言   时间:2019-04-22 15:19:51    阅读次数:181
8.4 找到无序数组中最小的k个数
【题目】: 给定一个无序的整型数组arr,找到其中最小的k个数 【要求】: 如果数组arr的长度为N,排序之后自然可以得到最小的k个数,此时时间复杂度与排序的时间复杂度相同,均为O(NlogN)。本题要求读者实现时间复杂度为O(Nlogk)和O(N)的方法 ...
分类:编程语言   时间:2018-11-19 13:28:57    阅读次数:124
各种排序方法与其相对应的最好、最坏、平均时间复杂度
排序方法 最坏时间复杂度 最好时间复杂度 平均时间复杂度直接插入 O(n2) O(n) O(n2)简单选择 O(n2) O(n2) O(n2)起泡排序 O(n2) O(n) O(n2)快速排序 O(n2) O(nlog2n) O(nlog2n)堆排序 O(nlog2n) O(nlog2n) O(nl ...
分类:编程语言   时间:2018-09-22 19:40:42    阅读次数:182
算法-排序
算法和时间复杂度;排序:冒泡排序、选择排序、插入排序、快速排序、堆排序、归并排序、希尔排序、heapq模块
分类:编程语言   时间:2018-07-31 17:23:26    阅读次数:171
排序算法-插入排序(javascript)
思想:每一趟将一个记录插入到已经排好序的一组记录的适当位置上,知道所有待排序记录都插入为止。 时间复杂度: 排序的基本操作为:比较两个关键字和移动。最好的情况:正序。比较1次,不移动。最坏情况:逆序。比较i次(i-1加哨兵),移动i+1次(i-1加将待插入的移到监视哨加从监视哨移出)。对于整个排序过 ...
分类:编程语言   时间:2017-12-04 00:01:43    阅读次数:171
常用排序算法及java语言实现
各类排序算法的时间复杂度 排序算法概述: 排序大的分类可以分为两种:内排序和外排序。在排序过程中,全部记录存放在内存,则称为内排序,如果排序过程中需要使用外存,则称为外排序。下面讲的排序都是属于内排序。 内排序可以分为以下几类: (1)、插入排序:直接插入排序、二分法插入排序、希尔排序。 (2)、选 ...
分类:编程语言   时间:2017-11-28 11:43:16    阅读次数:161
Python基本常用算法
什么是算法 就是一个计算的过程,解决问题的方法 用到知识点 递归 调用自身 有结束条件 下次执行相应的复杂度要减少 时间复杂度排序(按效率排序) O(1)<O(logn)<O(n)<O(nlogn)<O(n2)<O(n2logn)<O(n3) 判断时间复杂度 1.循环减半的过程就是O(logn) 2 ...
分类:编程语言   时间:2017-08-24 20:00:35    阅读次数:206
常见的时间复杂度
基础知识的累积罢了。常见的时间复杂度排序:O(1)时间复杂度最小,常数阶;O(logn)1时,logn始终在n下方O(n)1时都不需要思考;O<O,后者是翻倍啊,前者做不到啊,想一想10的立方和11的立方的差别。O)<O(n!),想想不只是翻一倍了,而是越翻越多。所以:O(1)< O(logn)<O...
分类:其他好文   时间:2015-04-21 22:10:36    阅读次数:150
算法复杂度分析方法以及算法概述
算法定义:解决特定问题的求解步骤的描述.算法特性:有穷性、确定性、可行性、输入、输出算法的设计要求:正确性、可读性、健壮性、高效率和低存储量需求算法度量方法:事后统计方法(不科学)、事前分析估算方法函数的渐近增长:给定两个函数f(n)和g(n),如果存在一个整数N,..
分类:编程语言   时间:2014-12-03 01:51:10    阅读次数:167
19条   上一页 1 2
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!