首先总结一下集合的体系: 集合 的体系: | Collection 单例集合的根接口 | List 如果是实现了List接口的集合类,具备的特点: 有序,可重复。 | ArrayList 底层是维护了一个Object数组实现的。 特点: 查询速度快,增删慢。 | LinkedList 底层是使用了链 ...
分类:
编程语言 时间:
2020-07-03 21:09:55
阅读次数:
55
题目: 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。 示例: 输入:nums = [1,2,3,4]输出:[1,3,2,4] 注:[3,1,2,4] 也是正确的答案之一。 来源:力扣(LeetCode)链接:https://le ...
分类:
编程语言 时间:
2020-07-02 18:08:36
阅读次数:
80
问题描述 : 你有一个破损的键盘。键盘上的所有键都可以正常工作,但有时Home键或者End键会自 动按下。你并不知道键盘存在这一问题,而是专心地输入英文单词,甚至连显示器都没瞧一眼。当你 看显示器时,展现在你面前的是一段悲剧的文本。你的任务是计算这段文本有几个单词。 输入包含多组数据。每组数据占一行 ...
分类:
其他好文 时间:
2020-07-01 16:03:23
阅读次数:
72
两年前,我甚至写过一篇文章,吐槽数组在 Java 中挺鸡肋的,因为有 List 谁用数组啊,现在想想那时候的自己好幼稚,好可笑。因为我只看到了表面现象,实际上呢,List 的内部仍然是通过数组实现的,比如说 ArrayList,在它的源码里可以看到下面这些内容: /** * The array bu ...
分类:
编程语言 时间:
2020-06-26 14:54:39
阅读次数:
87
如何理解“队列”? 队列这个概念非常好理解。你可以把它想象成排队买票,先来的先买,后来的人只能站末尾,不允许插队。先进者先出,这就是典型的“队列”。我们知道,栈只支持两个基本操作:入栈 push()和出栈 pop()。队列跟栈非常相似,支持的操作也很有限,最基本的 操作也是两个:入队 enqueue ...
分类:
其他好文 时间:
2020-06-24 14:02:37
阅读次数:
62
call() 方法在使用一个指定的 this 值和若干个指定的参数值的前提下调用某个函数或方法。 apply 方法,类似,不同点在于, apply 方法传入的第二个参数 是一个数组, 实现步骤 改变函数的his指向 调用该方法 删除方法 function foo(){ console.log(thi ...
分类:
移动开发 时间:
2020-06-20 21:05:03
阅读次数:
76
分页方式:1.数组拼接 2.利用二维数组实现局部加载 关于1.基本思路时,当触发分页方法,请求到新数据(newList)拼接在老数据中(oldList),最后在渲染一次。 然后在对应的方法上进行调用就是了,可以是滚动条监听(bindscrolltolower),也可以是小程序自带的(onReachB ...
分类:
微信 时间:
2020-06-19 22:48:43
阅读次数:
110
栈 //用数组实现一个顺序栈 type Stack struct{ arr []int used int capcity int } func NewStack(capicity int) *Stack{ stack := &Stack{} stack.arr = make([]int,capici ...
分类:
其他好文 时间:
2020-06-18 01:34:12
阅读次数:
50
集合类分为两个分支,Collection与Map,其中Collection接口继承了Iterator接口,继承Iterator接口的类可以使用迭代器遍历元素(即Collection接口的类都可以使用),今天我们从相同点、不同点、以及JDK源码等各个方面来深入解析下,底层使用数组实现的两个集合类:Ar ...
分类:
编程语言 时间:
2020-06-17 23:13:00
阅读次数:
60
一、概念 栈:后进先出,先进后出的数据结构。栈是一种“操作受限‘的线性表,只允许在一端插入和删除数据。 当某个数据集合只涉及在一端插入和删除数据,并且满足后进先出、先进后出的特性,我们就应该首选“栈”这种数据结构。 二、如何实现“栈” 既可用数组(顺序栈),也可用链表(链式栈) 数组实现: // 基 ...
分类:
编程语言 时间:
2020-06-16 23:16:52
阅读次数:
79