能使用STL的sort系列算法的前提是容器的迭代器必须为随机迭代器。所以,vector和deque天然适用。STL的sort算法采用了一些策略,在不同情况下采用不同的排序算法,以达到各种算法优势互补的效果。基本的原则是:数据量大时采用快速排序,数据量小时采用插入排序(这是对快排常用的一种优化策略),递归层次过深改用堆排序。
首先是插入排序。它的平均和最坏时间复杂度都为O(N²),量级小于...
分类:
其他好文 时间:
2014-05-18 14:40:31
阅读次数:
241
一 基本概念
分治法,顾名思义分而治之的意思,就是把一个复杂的问题分成两个或更多的相同或相似的子问题,再把子问题分成更小的子问题……直到最后子问题可以简单的直接求解,原问题的解即子问题的解的合并。
二基本思想及策略
分治法的设计思想是:将一个难以直接解决的大问题,分割成一些规模较小的相同问题,以便各个击破,分而治之。
分治策略是:对于一个规模为n的问题,若该问题可以容易地解...
分类:
其他好文 时间:
2014-05-18 14:31:14
阅读次数:
331
1,不为失败找借口
既然我们选择了做SEO,那么发生站点被降权、被K是经常的事。当这种情况发生时,大部分站长首先将责任推给百度机制,因为百度更新算法调整遭降权,不是因为他们的优化没有做到位,所以站长在SEO界取得成功很难。SEO是百度搜索引擎算法的调整,因为站点被K的原因主要是因为你没有时刻做好优化工作,责任在于你,犯错误并不可怕,可怕的是在错误的道路上越走越远,没有意识到自己的...
分类:
其他好文 时间:
2014-05-18 13:46:08
阅读次数:
306
上篇博文我重点介绍了八大内部排序,这篇博文(数据结构与算法的最后一课)重点介绍查找,我们依旧沿用上篇博文的风格,先简单介绍,再以例子重点讲解。
下面我们开始今天的旅行,首先祝你旅行愉快,呵呵。
静态查找
若查找目的是为了查询某个特定的数据是否在表中或检索某个特定数据的各种属性...
分类:
其他好文 时间:
2014-05-18 13:26:40
阅读次数:
299
学习编程也有一段时间了,随着学习的不断深入,我越来越体会到了算法的重要性,最近遇到了一些非常有意思的算法,比如打印水仙花数、将数字逆置,在这两个算法中会用到一个数字钟每一位的值
如:判断数字123是否是水仙花数需要得到每一位的数字
通常计算每一位的数字的算法是:
个位:a = 123 % 10 = 3
十位:b = 123 %100 / 10 = 2
百位::c = 123 % 100...
分类:
其他好文 时间:
2014-05-18 08:24:36
阅读次数:
324
1、
??
ZigZag Conversion
The string "PAYPALISHIRING" is
written in a zigzag pattern on a given number of rows like this: (you may want to display this pattern in a fixed font for better legibili...
分类:
其他好文 时间:
2014-05-18 07:56:49
阅读次数:
407
【题目】
Write a function to find the longest common prefix string amongst an array of strings.
【题意】
求一组字符串的最长公共前缀
【思路】
使用归并思想求解
要求字符串[1,2,..,k,k+1,...n]的最大公共前缀,先分别求[1,2,...k]和[k+1,...,n]的公共前缀...
分类:
其他好文 时间:
2014-05-18 05:17:53
阅读次数:
232
题目:
链接:点击打开链接
题意:
知道存钱罐的质量和装满硬币的存钱罐的质量,然后是不同硬币的价值和质量,求出存钱罐里钱币的最小价值。
算法:
完全背包问题,银币的个数是不限的。
思路:
状态转移方程:j = 0时,价值为0
dp[j] = min(dp[j],dp[j-w[i]]+v[i]);//表示质量为j的钱币,含有的最小的价值
代码:
#...
分类:
其他好文 时间:
2014-05-18 04:02:59
阅读次数:
195
题目一:求1!+2!+…..+n! 的和的后6位,(注意n的范围)
#include
using namespace std;
const int MAX = 1000000;
int getResu(int n)
{
int sum=0;
int temp= 1;
for(int i=1; i <= n; i++)
{
temp *= i;
temp %= MAX;
...
分类:
其他好文 时间:
2014-05-18 03:36:19
阅读次数:
223
【题目】
Given an array S of n integers, are there elements a, b, c in S such that a + b + c = 0? Find all unique triplets in the array which gives the sum of zero.
Note:
Elements in a triplet (a,b,c) must be in non-descending order. (ie, a ≤ b ≤ c)
The so...
分类:
其他好文 时间:
2014-05-18 03:15:50
阅读次数:
287