常见算法
mechanic-heaven
这个作者很懒,什么都没留下…
展开
-
常见的查找算法
本文简单介绍一下7中查找算法,首先查找就是根据给定的值,在查找表中找到它的位置。查找算法的分类:静态查找和动态查找(都是针对查找表而言的。动态表示查找表中有增删操作)无序查找和有序查找(有序查找要求必须为有序数列,无序则不要求)平均查找长度(ASL):需要和目标关键字进行比较的次数对于含有n个数据元素的查找表,查找成功的平均查找长度为:ASL = Pi*Ci的和。 Pi:查找表中...原创 2020-02-06 14:44:11 · 548 阅读 · 1 评论 -
常见的排序算法
常见的排序算法|排序方法平均时间最好时间最坏时间冒泡排序(稳定 )O(n2 )O(n)O(n2)选择排序(不稳定)O(n2 )O(n2 )O(n2 )插入排序(稳定)O(n2 )O(n)O(n2)希尔排序(不稳定)O(n1.5)快速排序(不稳定)O(nlogn)O(nlogn)O(n^2)归并排序(稳定)O(n...原创 2020-02-04 20:49:46 · 236 阅读 · 0 评论 -
字符串的全排列算法
题目描述输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。思路这是一个递归求解的问题,递归求解的四个特点:1、必须有可达到的终止条件,否则程序陷入死循环2、子问题在规模上比原问题小3、子问题可通过再次递归调用求解4、子问题的解应能组合成整个问题的解对于字符串的...转载 2020-01-20 19:03:53 · 516 阅读 · 0 评论 -
快速幂
快速幂朴素求幂法最简单的求幂方法,时间复杂度O(n)int pow(int a,int b) {//a^b int ans = 1; for (int i = 1; i <= b; i++) { ans *= a; } return ans; }快速幂时间复杂度为O(logn),假设我...原创 2019-12-26 17:39:54 · 124 阅读 · 0 评论