/*
** 二叉堆的实现
** 堆最重要的性质是儿子的值大于等于父亲的值,除此之外,
** 树的节点是按照从上到下,从左到右的顺序紧凑排列的。
**
** 插入:首先在末尾插入,然后不断向上提升直到没有大小颠倒为止。
** 删除:首先把堆的最后一个元素复制到根节点并且删除最后一个
** 节点。然后不断向下交换直到没有大小颠倒为止。在向下交换过程
** 中,如果有两个儿子,那么选择数值较小的儿子...
分类:
其他好文 时间:
2014-10-31 17:18:17
阅读次数:
194
用程序实现,找出从n个不同元素中,任取m(m≤n)个元素所有的组合。需要用到下面的递推公式:c(n,m)=c(n-1,m-1)+c(n-1,m)从n个元素中选取m个元素,可以拆分成:先选取最后一个元素n,再从n-1 个元素中选取m-1 个元素,然后加上从排除n的n-1 个元素中选取m元素。递归实现代...
分类:
编程语言 时间:
2014-10-31 15:13:35
阅读次数:
200
定义和用法slice() 方法可从已有的数组中返回选定的元素。语法arrayObject.slice(start,end)参数描述start必需。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素,-2 指倒数第二个元素,以此类推。end可选。规定从何...
分类:
其他好文 时间:
2014-10-30 11:00:10
阅读次数:
209
前开后闭开区间表示法[)任何一个STL算法,都需要获得由一对迭代器(泛型指针)所标示的区间,用以表示操作范围,这一对迭代器所标示的是个所谓的前闭后开区间,以[first,last)表示,也就是说,整个实际范围从first开始,直到last-1.迭代器last所指的是“最后一个元素的下一位置”。这种o...
分类:
其他好文 时间:
2014-10-29 23:49:28
阅读次数:
330
1对数组的操作方法:1. push():在数组末尾添加数组2.unshift():在数组头部添加元素3.concat()合并两个数组4pop()删除返回数组的最后一个元素5shift()删除并返回数组的第一个元素splice(参数1,参数2,参数3):删除任意数量的项:1要删除的起始下标2要删除的项...
分类:
编程语言 时间:
2014-10-26 16:55:43
阅读次数:
262
1.set的基本操作:begin()返回指向第一个元素的迭代器clear()清除所有元素count()返回某个值元素的个数empty()如果集合为空,返回trueend()返回指向最后一个元素的迭代器equal_range()返回集合中与给定值相等的上下限的两个迭代器erase()删除集合中的元素f...
分类:
编程语言 时间:
2014-10-25 15:48:41
阅读次数:
229
unshift:在数据首段添加元素。push: 在数组的末端添加元素。shift:移除并返回第一个元素,会影响 数组长度。pop:移除并返回最后一个元素。会影响 数组长度。delete 数组[索引] ,删除数组内的一个元素,但是数组长度不会发生变化。join: 把数组元素连接起来,拼成字符串。元素之...
分类:
编程语言 时间:
2014-10-24 10:35:38
阅读次数:
155
1.listassign() 给list赋值back() 返回最后一个元素begin() 返回指向第一个元素的迭代器clear() 删除所有元素empty() 如果list是空的则返回trueend() 返回末尾的迭代器erase() 删除一个元素front() 返回第一个元素get_allocat...
分类:
编程语言 时间:
2014-10-23 19:00:27
阅读次数:
225
双向链表概述双向链表也叫双链表,是链表的一种,它的每个数据结点中都有两个指针,分别指向直接后继next和直接前驱prev。所以,从双向链表中的任意一个结点开始,都可以很方便地访问它的前驱结点和后继结点。为了标识链表的头和尾,将第一个元素的prev指针和最后一个元素的next指针设置为NULL要反向遍...
分类:
其他好文 时间:
2014-10-23 14:18:14
阅读次数:
160
介绍 ·First - 返回集合中的第一个元素;不延迟 ·FirstOrDefault - 返回集合中的第一个元素(如果没有则返回默认值);不延迟 ·Last - 返回集合中的最后一个元素;不延迟 ·LastOrDefault - 返回集合中的最后一个元素(如果没有则返回默认...
分类:
其他好文 时间:
2014-10-22 19:54:04
阅读次数:
238