1. vi的基本操作
a) 进入vi
在系统提示符号输入vi及文件名称后,就进入vi全屏幕编辑画面:1
$ vi myfile
不过有一点要特别注意,就是一进入vi之后,就是处于「命令行模式(command mode)」,要切换到「插入模式(Insert mode)」才能够输入文字。初次使用vi的人都会想先用上下左右键移动光标,结果电脑一直哔哔叫了哦,所以进入vi后,先不要乱动,转换到「插入模式(Insert mode)」再说吧!
于利不趋,于色不近,于失不馁,于得不骄。
a) 进入vi
在系统提示符号输入vi及文件名称后,就进入vi全屏幕编辑画面:1
$ vi myfile
不过有一点要特别注意,就是一进入vi之后,就是处于「命令行模式(command mode)」,要切换到「插入模式(Insert mode)」才能够输入文字。初次使用vi的人都会想先用上下左右键移动光标,结果电脑一直哔哔叫了哦,所以进入vi后,先不要乱动,转换到「插入模式(Insert mode)」再说吧!
前言
所有的总结都是为了复习,当然,也是作为了一种知识点的积累和回顾。
HashMap vs ConcurrentHashMap
引入ConcurrentHashMap是为了在同步集合HashTable之间有更好的选择.
HashTable与HashMap、ConcurrentHashMap主要的区别:
1. 在于HashMap不是同步的、线程不安全的和不适合应用于多线程并发环境下,而ConcurrentHashMap是线程安全的集合容器,
2. 特别是在多线程和并发环境中,通常作为Map的主要实现。
3. 除了线程安全外,他们之间还有一些细微的不同,本文会介绍到。
4. 顺便说说,HashMap和ConcurrentHashMap还有ConcurrentHashMap和Hashtable两者之间的区别在Java面试中经常出现,特别是高级Java程序员。
HashMap与ConcurrentHashMap的区别在这部分,我们会看到更多关于HashMap和ConcurrentHashMap的细节和对比它们之间的参数比如线程安全、同步、性能和基本的使用。
前言
所有的总结都是为了复习,当然,也是作为了一种知识点的积累和回顾。
二叉树
1.所有非叶子结点至多拥有两个儿子(Left和Right);
2.所有结点存储一个关键字;
3.非叶子结点的左指针指向小于其关键字的子树,右指针指向大于其关键字的子树;
二叉树的搜索,从根结点开始,如果查询的关键字与结点的关键字相等,那么就命中;
否则,如果查询关键字比结点关键字小,就进入左儿子;如果比结点关键字大,就进入右儿子;如果左儿子或右儿子的指针为空,则报告找不到相应的关键字;
如果二叉树的所有非叶子结点的左右子树的结点数目均保持差不多(平衡),
那么二叉树的搜索性能逼近二分查找;但它比连续内存空间的二分查找的优点是,改变二叉树结构
(插入与删除结点)不需要移动大段的内存数据,甚至通常是常数开销;
前言
所有的总结都是为了复习,当然,也是作为了一种知识点的积累和回顾。
前言
所有的总结都是为了复习,当然,也是作为了一种知识点的积累和回顾。
前言
所有的总结都是为了复习,当然,也是作为了一种知识点的积累和回顾。
并行和并发的区别
* 并发可以是虚拟的同时执行,也可以是真的同时执行。
* 并行的意思是真的同时执行。
* 结论是:并行是我们物理时空观下的同时执行,而并发则是操作系统用线程这个模型抽象之后站在线程的视角上看到的“同时”执行。
GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二。
最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数。
你可能自己写过无数个GET和POST请求,或者已经看过很多权威网站总结出的他们的区别,你非常清楚知道什么时候该用什么。