自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

骄燕的博客

见贤思齐焉

  • 博客(8)
  • 收藏
  • 关注

原创 Java 8新特性:Stream

Java 8 中,引入了流(Stream)的概念,注意这个流和 IO 中的流并不一样,它代表的是顺序输出的任意Java对象实例。Stream的特点:可以“存储”有限个或无限个元素。这里的存储打了个引号,是因为元素有可能已经全部存储在内存中,也有可能是根据需要实时计算出来的。一个Stream可以轻易地转换为另一个Stream,而不是修改原Stream本身。真正的计算通常发生在最后结果的获取,也就是惰性计算。惰性计算的特点是:一个Stream转换为另一个Stream时,实际上只存储了转换规则

2021-09-25 22:27:52 364

原创 lambda表达式

lambda表达式,也称为闭包,是java 8的新特性之一。Lambda 允许把函数作为一个方法的参数(函数作为参数传递进方法中)。使用 Lambda 表达式可以使代码变的更加简洁紧凑。String[] array = new String[] { "Apple", "Orange", "Banana", "Lemon" };Arrays.sort(array, (s1, s2) -> { // 省去了编写匿名类的麻烦 return s1.compareTo(s2);});//

2021-09-25 22:26:16 106

原创 面试手撕代码高频题目:实现一个LRU Cache

LRU缓存是面试中很容易考到的一个知识点,除了要对其原理熟悉之外,也要掌握其简单实现。通过采用两个hash map + list的数据结构,可以在O(1)的时间复杂度下实现get和put操作。class LRUCache {private: int size; list<int> lru; //key unordered_map<int, list<int>::iterator> map; //key, iterator unor

2020-07-24 08:40:44 420

原创 socket编程入门实践——基于TCP的echo服务器/客户端

最近在学习Linux网络编程,参考《TCP/IP网络编程》写下这个socket编程示例——基于TCP的echo服务器/客户端。echo服务器,顾名思义就是将收到的客户端数据原封不动地传回客户端。无论多么复杂的TCP服务器,其函数调用顺序几乎都是socket -> bind -> listen -> accept -> read/write -> close,因此掌握这些基本函数的使用方法是很重要的。以下是基于TCP的echo服务器的完整代码(附带详细注释):#include

2020-05-28 11:27:17 2479

原创 MySQL: 找出员工表中最高、第二高、第N高的薪水

假设有如下所示的员工薪水表:找出表中最高的薪水非常简单,编写下面的SQL即可:SELECT max(Salary) as HighestSalary FROM Employee;利用查询的嵌套,也可以较为容易地找出表中第二高的薪水:SELECT max(Salary) FROM Employee WHERE Salary < (SELECT max(Salary) FROM Employee);不过,要是我们想找出第三高、第四高的薪水呢?有的人可能会说按照上面的思路,在SQL语句的

2020-05-12 13:33:30 6982

原创 C++ unordered_map无法使用pair作为key的解决办法

最近在使用STL中unordered_map这种容器的时候发现无法将key设置为pair类型,编译报错信息为:error: implicit instantiation of undefined template 'std::__1::hash<std::__1::pair<int, int> >查了下资料才发现unordered_map中没有针对pair的hash函...

2020-05-01 13:31:16 6316

原创 快速排序的两种C++实现,复杂度分析及优化

快速排序可能是面试中最常被考察的算法了,求职者一定要非常熟练地掌握掌握这一算法。下面介绍该算法的两种C++实现方法:方法一:void quickSort(vector<int> &nums, int b, int e) { if (b < e) { int pivot = nums[b]; //选取第一个元素为pivot ...

2020-04-26 11:22:37 590

原创 Hello, CSDN

虽然我在几年前就注册了CSDN账号,但一直以来都是以阅读者的身份在使用。现在,我也觉得有写一点东西的必要了。虽然写博客会占用一点时间,但能把自己的学习总结,心得体会和大家分享,还是一件挺快乐的事。我不是什么大牛,初期的文章可能会比较“小儿科”,但我相信只要坚持下去,总有一天能成为一名优秀的博客创作者。希望能把写博客这个习惯保持下去。CSDN,I am coming!...

2020-04-25 23:08:17 405

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除