heap不属于STL容器,它扮演者priority queue的助手。heap是一种完全二叉树,可由数组来实现,但heap需要动态改变大小,所以最终选择了vector作为底层容器。STL默认提供最大堆。
题外话:分析heap的源码就能清楚的理解堆这种数据结构的例程,而STL库代码的质量又很高,所以看堆的代码,STL源码是一个很好的选择。
为了满足完全二叉树的性质,新插入的元素一...
分类:
其他好文 时间:
2014-07-22 23:04:53
阅读次数:
363
json是一种轻量级数据交换格式,简单的json格式为[{"key1":"value1"},{"key2":"value2"}],
[]代表数组,{}代表数组中的数据对象,key1,key2是一个json对象中的key,一个json中key值唯一,value1,value2,是key键对应的值。
下面使用jquery解析简单的son文件。
这里是songs.json文件内容
[
{"opt...
分类:
Web程序 时间:
2014-05-01 18:17:27
阅读次数:
447
题目来源:POJ 3882 Stammering Aliens
题意:给你m一个一个字符串 求至少出现m次的最长字符串 可以在字符串中重叠出现
思路:二分长度l 然后从height数组中找长度大于等于l的前缀
#include
#include
#include
using namespace std;
const int maxn = 40010;
char s[maxn];
in...
分类:
其他好文 时间:
2014-05-01 17:36:34
阅读次数:
334
方案一:利用UINavigationBar 自带的布局item(Fixed space Bar Button Item)来适配ios7. 其实就是在原来返回按钮的位置上在多加一个占位的Item
为UINavigationBar 写一个分类。UINavigationItem+correct_offset.h
#import
@interface UINavigationIte...
分类:
移动开发 时间:
2014-05-01 17:29:39
阅读次数:
525
--------------------------------------------------
typedef声明,简称typedef,为现有类型创建一个新的名字,或称为类型别名,在结构体定义,还有一些数组等地方都大量的用到。
它有助于创建平台无关类型,甚至能隐藏复杂和难以理解的语法 。使用typedef可编写出更加美观和可读的代码。所谓美观,意指typedef能隐藏笨拙的语法构造以...
分类:
其他好文 时间:
2014-05-01 17:28:24
阅读次数:
308
1:temp = array[i]*i: 2410.0 ms
2:temp = GET(array,i) *i: 2410.0 ms
3:temp = get(array,i)*i: 2950.0 ms
4:int a = get(array,i);temp = a*i: 3340.0 ms
5: int a = array[i];temp = a*i;: 1990.0...
分类:
其他好文 时间:
2014-04-30 22:25:38
阅读次数:
303
使用javascript ajax C#实现类似百度的自动搜索效果
文本框下方是一个div,里面是一个ul标签,初始状态此ul中不包含任何的li标签。
当文本框文字改变的时候,使用ajax把文本框内容取出来,传递到后台,在后台中从数据库查询数据并把结果返回到前台页面。
返回的结果格式设置为:A,B,C,D;以便在前台实现字符串分割。
前台页面把返回的字符串切分成数组,依次遍历并给ul添加li节点。...
分类:
编程语言 时间:
2014-04-30 22:23:39
阅读次数:
323
0长度的数组在ISO C和C++的规格说明书中是不允许的,但是由于gcc 预先支持C99的这种玩法,所以,“零长度数组”在gcc环境下是合法的。
先看下面两个例子。
pzeroLengthArray.c
#include
struct str
{
int len;
char *s;
};
struct foo
{
struct str *a;
};
int main()
{...
分类:
其他好文 时间:
2014-04-30 22:22:39
阅读次数:
300
冒泡排序
思路:就是每次将最大或最小的元素放到数组的最后,so easy!时间复杂度为(O(n^2))
public class BubbleSort {
public static void bubbleSort(int[] a) {
for (int j = 1; j < a.length; j++) {
for (int i = 0; i < a.length - j; i+...
分类:
编程语言 时间:
2014-04-30 22:12:40
阅读次数:
309