苦逼的码农

其他

从jvm角度看懂类初始化、方法重载、重写(修订版)

如果类型C中找到run()这个方法,则进行访问权限的检验,如果可以访问,则方法这个方法的直接引用,查找结束;如果这个方法不可以访问,则抛出java.lang.IllegalAccessEror异常。
2019年3月18日
其他

ThreadLocal 都不懂?还怎么加薪!

doSomething()是真正做事的函数,里面封装了一个具体的任务处理过程,你不可以改动,现在我想通过before()和after()来计算出doSomething()花费了多长时间
2019年3月11日
其他

这 5 道 Java 面试题,你还真不一定懂。

CloneNotSupportedException2naitive方法,用于创建并返回当前对象的一份拷贝。一般情况下,拷贝的对象和原对象内容完全相同,只是内存地址不一样,并且对于任何对象
2019年3月8日
其他

一文读懂一台计算机是如何把数据发送给另一台计算机的

例如,192.168.43.1和192.168.43.2的子码掩码都为255.255.255.0,把IP与子码掩码相与,可以得到他们都为192.168.43.0,进而他们处于同一个子网中。
2019年3月4日
其他

Java集合、数组与泛型中的几个陷阱,你掉进了几个?

是一个泛型,在没有赋值之前,是可以接受任何集合的赋值的,我想这点大家都知道,但是请注意,赋值之后就不能往里面添加元素了,提示如下错误:
2019年3月1日
其他

有个姑娘网恋奔现发现自己被人卖了,跟她见面的是另一个人。

李琴说是在快见面之前的时候,当时让他陪我打王者,因为我玩的是QQ区的,他玩的是微信区的,不同区的没法一起玩,得加QQ好友才行,然后他一直让我等等,我生气之后他马上给了我一个QQ。
2019年2月27日
其他

关于集合中一些常考的重点知识点总结

底层数据结构是双向链表,链表的特点就是随机访问速度慢,必须一个一个遍历,不能直接通过下标定位,不过在插入、删除方面速度就比较快。不过由于链表是内存分配不要求连续,内存的利用率比较高。
2019年2月27日
其他

Java面试题(二):你真的懂这几道题了吗?

每天更新几道面试题的答案,每道题会提供简单的解答,如果错误或你有所补充的,可以加我或后台发给我,谢谢。问题来源:史上最全各类面试题汇总,没有之一,不接受反驳
2019年2月26日
其他

剑指offer:二进制中1的个数

本来是打算次条每天更新面试题和算法刷题的,加上头条一共要三篇文章,实在更不来,而且两篇都看的人也不多,所以我就算法刷题和面试题论着更新,更新的时候多更新几道。
2019年2月24日
其他

剑指offer:重建二叉树

基于这个特点,我们可以采用递归的方法来做,如果对递归的使用不是很熟的,建议看我之前的链表打卡链表打卡汇总,很多题都用到了递归,其大致逻辑如下。
2019年2月23日
其他

Java面试题及其解答(一)

对于静态类型相同,但实际类型不同的变量,虚拟机在重载的时候是根据参数的静态类型而不是实际类型作为判断选择的。并且静态类型在编译器就是已知的了,这也代表在编译阶段,就已经决定好了选择哪一个重载方法。
2019年2月23日
其他

剑指offer:二维数组中的查找

一种简单的方法就是整个数组都遍历,当然,数组从左到右,从上到下都是有序的,如果你遍历整个数组的话,那就浪费了数组的局部有序性了。
2019年2月22日
其他

史上最全各类面试题汇总,没有之一,不接受反驳

StackOverflow异常有没有遇到过?⼀般你猜测会在什么情况下被触发?如何指定⼀个线程的堆栈⼤⼩?⼀般你们写多少?
2019年2月21日
其他

必学十大经典排序算法,看这篇就够了(附完整代码/动图/优质文章)(修订版)

假如从开始的第一对到结尾的最后一对,相邻的元素之间都没有发生交换的操作,这意味着右边的元素总是大于等于左边的元素,此时的数组已经是有序的了,我们无需再对剩余的元素重复比较下去了。
2019年2月20日
其他

巧用这19条MySQL优化,效率至少提高3倍

SELECT*增加很多不必要的消耗(CPU、IO、内存、网络带宽);增加了使用覆盖索引的可能性;当表结构发生改变时,前断也需要更新。所以要求直接在select后面接上字段名。
2019年2月20日
其他

必学十大经典排序算法,看这篇就够了(附完整代码/动图/优质文章)

假如从开始的第一对到结尾的最后一对,相邻的元素之间都没有发生交换的操作,这意味着右边的元素总是大于等于左边的元素,此时的数组已经是有序的了,我们无需再对剩余的元素重复比较下去了。
2019年2月19日
其他

Java这样学,Offer随便拿,学习方法和面试经验分享

做程序员个人觉得眼界很重要,就算这不是你的领域,但是你也要知道一点,所以经常关注其他的新技术是非常重要的!平常多接触一点开源技术,多上上github,争取能在github上面贡献一点自己的东西!
2019年2月16日
其他

面试小知识:MySQL索引相关

1、哈希表是把索引字段映射成对应的哈希码然后再存放在对应的位置,这样的话,如果我们要进行模糊查找的话,显然哈希表这种结构是不支持的,只能遍历这个表。而B+树则可以通过最左前缀原则快速找到对应的数据。
2019年2月15日
其他

面试官问:请拿出一段体现你水平的代码时,该如何回答?

第一种是有备而来的面试者,你最好去面试的时候带一个百宝箱:两份简历,一两张纸印了你最擅长的代码,如果更准备充足点,带上你的笔记本,或者平板,两者都要能上网、或者已经缓存了你的作品。
2019年2月15日
其他

2018年原创文章汇总,注意查收!

今天我把2018年的原创文章汇总一下,方便大家查找,如果觉得不错,不妨转发/分享一波,帅地再次感谢大家的支持。
2019年2月13日
其他

以后有面试官问你「跳跃表」,你就把这篇文章扔给他

假如我们要查找元素9,按道理我们需要从头结点开始遍历,一共遍历8个结点才能找到元素9。能否采取某些策略,让我们遍历5次以内就找到元素9呢?请大家花一分钟时间想一下如何实现?
2019年2月1日
其他

【解读】技术面试官到底想要什么样的人?

所谓面试造火箭,工作拧螺丝。给你一道造火箭的面试题,不是真要你造火箭,而是要看当你接受到这个任务的时候,你能完成多少,能想到多少方法,能有多少思路。至于火箭最后有没有飞起来,并不是我最关心的。
2019年1月27日
其他

被面试官问到“三次握手,四次挥手”时该怎么回答?

一个完整的TCP连接是双向和对称的,数据可以在两个方向上平等地流动。给上层应用程序提供一种双工服务。一旦建立了一个连接,这个连接的一个方向上的每个TCP报文段都包含了相反方向上的报文段的一个ACK。
2019年1月24日
其他

求求你规范下你的代码风格

给人好的印象,从一段代码风格开始。今天我总结了几个最常用到的代码规范、可以说你每时每刻都会接触到的了,也比较简单,如果你平时没有按这些规范写的话,建议慢慢改过来。
2019年1月22日
其他

为什么C语言不会过时?

先上一个表,这个就是著名的TIOBE语言排行榜。目前它是一个最权威的一个语言流行度的排行榜,从这个排行榜上看,你会得到一个最直观的结论。Java和C都在下降,而下降的部分被第三名以后的语言所瓜分。
2019年1月20日
其他

为啥用ip不可以访问知乎,而百度却可以?

我们知道,ipv4的ip地址是非常有限的,如果每个人都想拥有一个全球ip,那肯定是不够分配的,不知道啥是全球ip的可以看我这篇文章:谈谈NAT:什么?全球IP和私有IP是什么鬼?
2019年1月15日
其他

漫画:程序员之间的真爱,好暖啊!

目前专注于写【计算机基础】,【数据结构与算法】,【Java】,力求通俗易懂着讲解出来,期待你的加入
2019年1月13日
其他

Linux 的启动流程

使用的shell也是Bash。但是,它只加载.bash_profile,然后在.bash_profile里面调用.bashrc。而且,不管是ssh登录,还是在图形界面里启动shell窗口,都是如此。
2019年1月9日
其他

【漫画】为什么说O(n)复杂度的基数排序没有快速排序快?

我的想法:我觉得基数排序并非是一种时间换空间的排序,也就是说,数据量越大,额外的空间并非就越大。因为在把元素放进桶的时候,是完全可以用指针指向这个元素的,也就是说,只有初始的那些桶才算是额外的空间。
2019年1月8日
其他

推荐几个私藏的适合99%程序员的开源项目

目前该项目的star数为14077,这个开源项目里面汇总了各种程序员必须掌握的入门基础知识,包括算法,数据结构,JS等,推荐给大家,有事没事可以当做书本翻开看看,查漏知识补缺。
2019年1月7日
其他

程序员单身真的是有理由的吗?

目前专注于写【计算机基础】,【数据结构与算法】,【Java】,力求通俗易懂着讲解出来,期待你的加入
2019年1月5日
其他

别再学习框架了

在网上看到了这篇文章,有标题党嫌疑,虽然作者说得有点极端,但是把大部分时间投入到学习那些基础的、不变的知识中去,这个观点我也认可,翻译过来大家看看。
2019年1月3日
其他

链表问题打卡汇总

我自己大概做了20几道的链表问题,发现大部分链表问题在思路上并不是很难,每个问题都有几种解法,每种解法在效率上是完全不一样的,看你能够想出哪一种了,还有就是一些细节的处理,例如临界点判断、空指针等。
2018年12月27日
其他

【链表问题】打卡10:将搜索二叉树转换成双向链表

原理虽然不难,但写起代码,还是有挺多细节需要注意的,所以一直强调,有时间的话,一定要自己手打一遍代码,有时你以为自己懂了,可能在写代码的时候,发现自己并没有懂,一写就出现很多bug。
2018年12月25日
其他

计算机是如何启动的?

我是觉得这篇文章挺不错的,想发出来也让大家看看,所以为了能够发出来,有些文字用图片的形式给出了,我是截一张图片就试一下能不能发出去,也是花了不少时间,争取尽量用最少的图片,这样阅读起来会比较舒服点。
2018年12月24日
其他

推荐几个自己私藏的黑科技使用网站,注意收藏!

有时候你在百度搜索某个关键词的时候,百度是从全网各类网站中搜索过来的,可以说各种鱼龙混杂网址都有,而且有些是有病毒的。这时候,我们就可以有site这个关键字来指定关键字的来源。具体的用法是这样的:
2018年12月20日
其他

【链表问题】打卡9:将单链表的每K个节点之间逆序

以专题的形式更新刷题贴,欢迎跟我一起学习刷题,相信我,你的坚持,绝对会有意想不到的收获。每道题会提供简单的解答,如果你有更优雅的做法,欢迎提供指点,谢谢。
2018年12月17日
其他

广播路由算法: 我是如何优雅着把悄悄话带给其他人的

假如我们把学校比作一个局域网的话,某台主机发起了一个广播,意味着局域网内的其他所有主机都会收到这个广播,那发起广播的主机是如何选择路径来给其他主机发送广播分组的呢?考虑下面由几个节点组成的网络:
2018年12月17日
其他

大厂与小厂工作的选择

都会有了越来越清晰的认识,这个阶段因人而异,而且很多时候也和个人的运气有关系,大多数人会作出不一样的人生选择选项,按下不同press按钮,社会的多样化,职业轨迹的多样化,在这个阶段开始分化爆发。
2018年12月15日
其他

什么?你不知道0.0.0.0和255.255.255.255这两个地址的干嘛的?

代表这是一个广播报文,会发给局域网内的所有主机。其他主机收到广播报文之后,会进行判断这个广播报文是否是发给自己的,如果是发给自己的,则进行处理,否则就把这个广播报文丢弃。
2018年12月11日
其他

【链表问题】打卡8:复制含有随机指针节点的链表

以专题的形式更新刷题贴,欢迎跟我一起学习刷题,相信我,你的坚持,绝对会有意想不到的收获。每道题会提供简单的解答,如果你有更优雅的做法,欢迎提供指点,谢谢。
2018年12月11日
其他

【链表问题】打卡7:将单向链表按某值划分成左边小,中间相等,右边大的形式

以专题的形式更新刷题贴,欢迎跟我一起学习刷题,相信我,你的坚持,绝对会有意想不到的收获。每道题会提供简单的解答,如果你有更优雅的做法,欢迎提供指点,谢谢。
2018年12月9日
其他

【链表问题】打卡6:三种方法带你优雅判断回文链表

上道题我们有作过链表的反转的,没看过的可以看一下勒:【链表问题】如何优雅着反转单链表],我们可以把链表的后半部分进行反转,然后再用后半部分与前半部分进行比较就可以了。这种做法额外空间复杂度只需要
2018年12月8日
其他

【面试现场】如何设计可自学习的五子棋AI?

小编注:关于这种算法的具体实现,由于篇幅较大就不在文章中具体展开了。想了解具体实现的朋友可以观看我在慕课网录制的免费视频教程:JS实现人机大战之五子棋(AI篇),文末点击阅读原文可进入。
2018年12月8日
其他

【链表问题】环形单链表约瑟夫问题

以专题的形式更新刷题贴,欢迎跟我一起学习刷题,相信我,你的坚持,绝对会有意想不到的收获。每道题会提供简单的解答,如果你有更优雅的做法,欢迎提供指点,谢谢
2018年12月6日
其他

关于进程与线程的一个简单解释

不难看出,mutex是semaphore的一种特殊情况(n=1时)。也就是说,完全可以用后者替代前者。但是,因为mutex较为简单,且效率高,所以在必须保证资源独占的情况下,还是采用这种设计。
2018年12月5日
其他

【链表问题】如何优雅着反转单链表

以专题的形式更新刷题贴,欢迎跟我一起学习刷题,相信我,你的坚持,绝对会有意想不到的收获。每道题会提供简单的解答,如果你有更优雅的做法,欢迎提供指点,谢谢
2018年12月4日
其他

BAT大揭秘:在腾讯、百度、阿里上班,差别竟然这么大?

目前专注于写【计算机基础】,【数据结构与算法】,【Java】,力求通俗易懂着讲解出来,期待你的加入
2018年12月2日
其他

【链表问题】删除单链表的中间节点

其实也是可以使用双指针的,但个人认为,那道题使用双指针的方法并没有我上次那个做法优雅,而这次删除中间节点,则用双指针比较优雅。至于原因,可以自己打下代码看看。
2018年11月29日
其他

【必学】Linux 下三剑客的技能,你敢不学?

在awk的文本处理规则里,awk将文本文件视为由字段和记录组成的文本数据库。默认情况下,awk将每一行视为一个记录,也就是说记录的分隔符是\n,记录的分隔符可以通过内置变量RS更改。
2018年11月29日