交互界面(^_^简易的,所以特别简陋): 各个功能演示一遍: ...
分类:
其他好文 时间:
2018-11-22 20:45:33
阅读次数:
168
"原题链接" 删除单向链表的倒数第n个结点。 思路: 用两个索引一前一后,同时遍历,当后一个索引值为null时,此时前一个索引表示的节点即为要删除的节点。 Runtime: 13 ms, faster than 24.49% of Java class Solution { public ListN ...
分类:
其他好文 时间:
2018-11-13 16:08:56
阅读次数:
109
与ArrayList同为List,LinkedList却展现出不同的特性。作为java.util下的另一重要容器,我们下面来探究一下LinkedList的源码实现及特性分析。 上篇文章讲述到,ArrayList用数组来存储数据,伴随数据量的变大,ArrayList动态扩充数组容量。与之不同,Link ...
分类:
编程语言 时间:
2018-11-10 00:10:23
阅读次数:
194
```
class Hero(object): def __init__(self, no=None, nickname=None, name=None, pNext=None): self.no = no self.nickname = nickname self.name = name self... ...
分类:
其他好文 时间:
2018-11-08 12:42:48
阅读次数:
140
最近在看redis方面的书籍,碰到了跳跃表这个数据结构。常规的单向链表在进行增删改查时,只能从头结点开始遍历,时间复杂度O(N),而跳跃表采用了二分法的思想,平均时间复杂度可以做到O(logN),最坏时间复杂度O(N)。另外,跳跃表是一种基于概率的数据结构(见下文添加元素操作)。 基本结构 下图是跳 ...
分类:
其他好文 时间:
2018-11-07 15:30:02
阅读次数:
211
题目:给定一个单向链表的头节点head,以及两个整数from和to,在单向链表上把第from个节点到第to个节点这一部分进行反转 例如: 1 --> 2 --> 3 --> 4 --> 5 --> null, from=2, to=4 调整结果为: 1 --> 4 --> 3 --> 2 --> 5 ...
分类:
其他好文 时间:
2018-10-28 11:12:24
阅读次数:
115
概要 线性表是一种线性结构,它是具有相同类型的n(n≥0)个数据元素组成的有限序列。本章先介绍线性表的几个基本组成部分:数组、单向链表、双向链表;随后给出双向链表的C、C++和Java三种语言的实现。内容包括: 出处:http://www.cnblogs.com/skywang12345/p/356 ...
分类:
编程语言 时间:
2018-10-26 10:35:39
阅读次数:
220
今天去际链面试,结果在coding这一关又折了。 那就总结一下吧,就当再手撕一下代码 首先定义一个listNode: 定义方法: 执行结果: 单向链表的反转还有其他高效的方法,欢迎交流学习!!!!! ...
分类:
其他好文 时间:
2018-10-18 01:05:32
阅读次数:
185
数组是用连续内存空间,而链表是用零散内存然后通过“指针”串联起来使用。 这样会出现个问题,如果内存有剩余不连续10M的内存空间,你申请10m的数组会oom,但是你申请10m的链表就不会有问题。图片用王争老师的 常用链表分为三种:单向链表;双向链表;循环链表;双向循环链表; 第一种:单向链表 第一个节 ...
分类:
其他好文 时间:
2018-10-15 00:42:25
阅读次数:
150
一、题目 1、审题 2、分析 给出两个单向链表,如果两个链表用重叠部分,输出重叠节点的第一个节点,否则输出 null; 二、解答 1、思路: 方法一、 将两个链表按照尾部进行对齐,在开始遍历链表,查找是否存在重叠节点。 ①、计算两个链表长度; ②、将长的链表向后移动,使得两链表尾部对齐; ③、开始查 ...
分类:
其他好文 时间:
2018-10-13 19:48:15
阅读次数:
173