题目戳这里 这题就是瞎搞……感觉我的方法比较麻烦啊…… 首先把所有的位置排个序放在队列里,然后从前向后扫,用数组记录队头和队尾指针之间的每种颜色有多少个,这样在队尾指针向后移动时,检查队首指针所指的地方颜色的珠子是否已经超过了1个,如果超过一个的话就可以把指针前移,知道队头指针所指的颜色在当前队列里 ...
分类:
其他好文 时间:
2016-07-21 00:44:11
阅读次数:
138
i:插入 x:删除 w:保存 q:退出不保存 wq:保存并退出 ...
分类:
其他好文 时间:
2016-07-20 17:35:24
阅读次数:
128
一、线性表基本概念
1.1 顺序存储—顺序表:
线性表的顺序存储又称为顺序表,用一组地址连续的存储单元,一次存储线性表中的数据元素,从而使得逻辑上相邻的两个元素物理位置也相邻。
优点:可以进行随机访问,只要知道下标索引即可在O(1)时间内找到指定元素。
缺点:插入和删除需要移动大量元素。
基本操作:插入、删除、查找(二分查找)、排序(归并排序)下一篇重点讲关于数组的常见题型
1.2 链...
分类:
其他好文 时间:
2016-07-19 11:08:45
阅读次数:
175
前面介绍了经典的数据结构和算法,这一节我们对这些数据结构和算法做一个总结,具体细节,请参见各个章节的详细介绍,这里我们用表格来呈现它们的效率。1. 数据结构部分数据结构中常用的操作的效率表通用数据结构查找 插入 删除遍历 数组O(N)O(1)O(N)—有序数组O(logN)O(N)O(N)O(N)链表O(N)O(1)O(N)—有序链表O(N)O(N)O(N)O(N)二叉树O(logN)O(log...
分类:
编程语言 时间:
2016-07-19 09:57:56
阅读次数:
179
LinkedList特点
1.内部通过双向链表存储数据
2.插入、删除不需要移动元素,只需要修改指针
所在包
package java.util;
继承AbstractSequentialList抽象类
实现List、Deque、Cloneable、java.io.Serializable
public class LinkedListE>
extends Abstrac...
分类:
其他好文 时间:
2016-07-15 22:01:05
阅读次数:
174
数据更新包括数据插入、删除和修改操作。它们分别由INSERT语句,DELETE语句及UPDATE语句完成。这些操作都可在任何基本表上进行,但在视图上有所限制。 ...
分类:
数据库 时间:
2016-07-15 13:13:27
阅读次数:
207
1.HashMap的数据结构数组的特点是:寻址容易,插入和删除困难;而链表的特点是:寻址困难,插入和删除容易。那么我们能不能综合两者的特性,做出一种寻址容易,插入删除也容易的数据结构?答案是肯定的,这就是我们要提起的哈希表,哈希表有多种不同的实现方法,我接下来解释的..
分类:
其他好文 时间:
2016-07-14 15:51:17
阅读次数:
112
题目:给出两个链表的头指针,比如head1和head2,判断这两个链表是否相交。这里为了化简,我们假设两个链表均不带环。
方案一:蛮力法。一般我们都能想到的,就是从head1开始,逐个与head2中的每个结点的地址比较,看是否相等,如果不等,则head1移动到下一个结点,继续和head2中的每一个结点的地址比较;如果找到相等,则这两个链表相交;直到head1==NULL,则不相交。注意为了避免存...
分类:
其他好文 时间:
2016-07-13 17:08:40
阅读次数:
114
之前的List,讲了ArrayList、LinkedList,最后讲到了CopyOnWriteArrayList,就前两者而言,反映的是两种思想: (1)ArrayList以数组形式实现,顺序插入、查找快,插入、删除较慢 (2)LinkedList以链表形式实现,顺序插入、查找较慢,插入、删除方便 ...
分类:
其他好文 时间:
2016-07-13 01:13:07
阅读次数:
181
前言 数组的特点是:寻址容易,插入和删除困难,数组利用下标定位,时间复杂度为O(1),插入或删除元素的时间复杂度O(n)。 链表的特点是:寻址困难,插入和删除容易,链表定位元素时间复杂度O(n),插入或删除元素的时间复杂度O(1)。 那么我们能不能综合两者的特性,做出一种寻址容易,插入删除也容易的数 ...
分类:
其他好文 时间:
2016-07-12 21:25:30
阅读次数:
160