Data线性表的数据对象集合为{a1,a2,...,an},每个元素的类型均为DataType。其中,除第一个元素a1外,每一个元素有且只有一个直接前驱元素,除了最后一个元素an外,每一个元素有且只有一个直接后继元素。数据元素之间的关系是一对一的关系。OperationInitList(*L):初始化操作,建立一个空的线性表L。ListEmpty(L):判断线性表是否为空表,若线性表为空,返回tr
分类:
其他好文 时间:
2018-02-06 16:37:20
阅读次数:
168
1.核心算法: 第一遍:冒泡取第一个数和第二个数进行比较,如果X(i)>X(i+1),就调换。这么遍历完一遍后,最后一个元素(n)是序列里最大的一个数。 第二遍:第一个数和后面的数进行比较,如果X(i)>X(i+1),就调换,一直到倒数第二个元素(n-1)。 总共需要遍历 n-1。 核心思想:遍历n ...
分类:
编程语言 时间:
2018-02-05 00:31:53
阅读次数:
208
1. 链表的基本概念 数组是一段连续的存储空间; 链表空间不一定保证连续,是临时分配的; 按方向: 单链表:每个节点只能通过next指针指向下一个节点; 双链表:除了可以用next指针之外,还可以用previous指针,指向前一个节点; 按有无环: 普通链表 循环链表(首尾相接的链表,最后一个元素的 ...
分类:
编程语言 时间:
2018-02-03 13:13:19
阅读次数:
164
选择一个基准元素,通常选择第一个元素或者最后一个元素,通过一趟扫描,将待排序列分成两部分, 一部分比基准元素小,一部分大于等于基准元素,此时基准元素在其排好序后的正确位置,然后再用同 样的方法递归地排序划分的两部分。 <! more Java代码实现 java package Sort; impor ...
分类:
编程语言 时间:
2018-02-02 20:11:32
阅读次数:
154
deque:双端队列 比较常用的函数: que.back() 返回容器que的最后一个元素的引用。如果que为空,则该操作未定义。 que.begin() 传回迭代器中的第一个数据地址。 que.clear() 移除容器中所有数据。 que.empty() 判断容器是否为空。 que.end() 返 ...
分类:
其他好文 时间:
2018-02-02 14:12:29
阅读次数:
121
''' list() 方法用于将元组转换为列表。 reverse() 函数用于反向列表中元素。 sort() 函数用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数。 pop() 函数用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值。 extend() 函数用于在列表末... ...
分类:
编程语言 时间:
2018-02-01 17:14:58
阅读次数:
161
list 列表属于可变列表 (1)可以包含任意对象有序集合,【如下图,任意数据类型,顺序跟我们存进入的一样】 (2) 通过下表索引访问,如下图所示甚至可以使用负数进行访问,-1是最后一个元素 下图访问范围: 从索引0到索引2。后面索引是不包含2的,请注意下 (3)可变长度。append方法进行追加 ...
分类:
编程语言 时间:
2018-01-29 00:20:57
阅读次数:
230
python简单数据类型 list list的创建,使用[] a_list = ['a', 'b', 'c'] print a_list print a_list[0] #a 如果去list的最后一个元素,除了计算索引位置外,还可用-1 print a_list[-1] #c 依次类推,可以获取倒数... ...
分类:
编程语言 时间:
2018-01-28 15:31:19
阅读次数:
158
2.2 堆排序 堆:1. 是完全二叉树;2. 树中所有结点都比左右孩子大(或小)。(但在实现过程发现,其实堆排序并没有用到树结构,还是用的顺序表,只是用完全二叉树来理解而已)。 堆排序是一种选择排序算法,其主要思路是:先将所有待排序元素构造成一个大顶堆(或小顶堆),接着将堆顶元素和最后一个元素(层序 ...
分类:
编程语言 时间:
2018-01-27 19:01:38
阅读次数:
153
1. 原题链接 https://leetcode.com/problems/jump-game/description/ 2. 题目要求 给定一个整型数组,数组中没有负数。从第一个元素开始,每个元素的值代表每一次你能从当前位置跳跃的步数。问能否跳到该数组的最后一个元素位置 注意:可以跳的步数超出数组 ...
分类:
其他好文 时间:
2018-01-25 00:29:33
阅读次数:
142