1、排序分类 比较排序:冒泡排序、选择排序、插入排序、归并排序、堆排序、快速排序(时间复杂度O(nlogn)~O(n^2)) 非比较排序:计数排序、基数排序、桶排序(时间复杂度O(n)) 2、冒泡排序 方法: // 分类 内部比较排序 // 数据结构 数组 // 最差时间复杂度 O(n^2) // ...
分类:
编程语言 时间:
2018-03-03 19:29:22
阅读次数:
176
在练习循环控制语句时,经常会遇到一类问题:使用循环控制打印星号(*)来形成各种各样的图案,并强调所有的星号(*)都要用单条的输出语句cout<<"*";来打印。 例如打印 通常使用两个嵌套的for循环可以有效的解决此类问题。 不过,我们一般每次只打印一个图案,如何将不同图案的代码整合到一起,并排的打 ...
分类:
其他好文 时间:
2018-03-03 18:17:51
阅读次数:
170
【题解】 需要用到裴蜀定理。 k个瓶子能倒出的燃料的最小值是这k个瓶子的容量的gcd. 那么原问题转化为在n个数中找到k个数使得它们的gcd最大。因为n的范围很小,所以对每个数求出所有因数并排序,最后找出现次数大于等于k的因数就是答案了。 ...
分类:
Web程序 时间:
2018-03-02 22:12:17
阅读次数:
183
时间复杂度为O(N*logN)的三个算法,归并排序、快速排序、堆排序、希尔排序 归并排序: 将数组分为若干个步长为1的区间,把两个相邻的区间合并,成为一个步长为2的有序区间 ,然后把两个相邻的步长为2的区间合并,成为一个步长为4的有序区间,以此类推,直到最后所有都有序 新建一个数组,将需要合并的区间 ...
分类:
编程语言 时间:
2018-03-02 01:16:23
阅读次数:
172
碎碎念: 记得当初第一年的时候、接触算法、有那么两个视频、跳舞的、讲的是冒泡排序跟选择排序、当时看了好多遍最终懂了、这次多了一些算法、学起来也还好吧、咱是有基础的人、找到了曾经的视频、有的就发了、没找到的就没法、事实上算法并不难、绕绕就明确了、先别看代码- - 思维导图 插入排序 从头到尾巴、从第二 ...
分类:
编程语言 时间:
2018-02-28 21:33:16
阅读次数:
174
因为元素的文档流是定位, 没有别的元素影响到A标签, 旁边也没有浮动的元素, 所以排除float元素和position元素并排一起出现的bug 给a标签随便添加背景色或者背景图片,然后将a标签的透明度设置为0,不过在IE中需要使用滤镜,即 运行下面代码 a{background-color:#fff ...
分类:
其他好文 时间:
2018-02-28 16:25:45
阅读次数:
128
1.两列多行: HTML: CSS: 这用到了nth-child(),兼容ie9及以上的浏览器,中间的空隙就是两个并排div宽度之和,100%减去后剩下的宽度; 既然提到了nth-child(),那么就要说一下nth-of-type(),也是只兼容ie9及以上的浏览器。它与nth-child的区别是 ...
分类:
Web程序 时间:
2018-02-28 12:56:07
阅读次数:
525
求逆序对有三种以上方法:1、离散树状数组,2、线段树,3、归并排序 今天做了下洛谷的P1908逆序对; 1、一开始用树状数组,一直RE,后来在发现自己一直忽略离散化。 ...
分类:
编程语言 时间:
2018-02-26 23:12:41
阅读次数:
175
【题目链接】 A - 逆序数 经典问题,有很多方法,例如树状数组,线段树,归并排序等。代码不贴了。 B - Big Water Problem 单点修改求区间和,树状数组或者线段树都可以。 C - 字符串的问题 比赛中暴力从大到小枚举前缀长度,KMP验证一下就 AC 了?还要思考一下复杂度究竟对不对 ...
分类:
编程语言 时间:
2018-02-25 20:41:21
阅读次数:
246
《算法导论》读书笔记之第15章 动态规划—装配线调度 前言:动态规划的概念 动态规划(dynamic programming)是通过组合子问题的解而解决整个问题的。分治算法是指将问题划分为一些独立的子问题,递归的求解各个问题,然后合并子问题的解而得到原问题的解。例如归并排序,快速排序都是采用分治算法 ...
分类:
编程语言 时间:
2018-02-25 14:27:15
阅读次数:
264