The Road Less Traveled

「少有人走的路 到处都是风景」

IDEA中编译src下的内容到classes目录中

IDEA编译

在我们使用IDEA开发的时候,往往需要用到getResource函数,去获取类中的一些资源 dataFile = XmlDataSource.class.getResource("/painting.xml").getPath(); 比如我们使用getResource函数去获取根目录中的painting.xml中的编写好的内容。 但是当我们将文件放入src目录下,却总是报NullPo...

IP协议之首部长度的计算

最短20个字节,最长60个字节

今天和大家聊一聊什么如何计算IP协议中的首部长度 首先什么是首部: IP协议的首部指的是IP报文中除去后面实际的IP数据后,前方用来标记IP的信息,称之为IP首部 那么什么是首部长度呢? 首部长度是一个4bit的数据,用来记录IP协议首部的长度,这样我们在读取信息的时候,才知道哪里是IP数据内容的开始 那么首部长度为什么有变化的呢? IP报文的结构如图所示,其中有一个op...

链表重排的解决之道

逆转链表

今天带着大家解决一道重排链表的问题,是Leetcode第143号问题,题目链接如下: https://leetcode.com/problems/reorder-list/ 想象一个双向队列,从头从尾交替出列(关键点在于找到最后的节点,或者说如何逆序进入链表) 递归法 入栈法 逆转链表法 首先是递归的方法 递归的逻辑 我们首先要找到最后一个节点提到最前,之...

使用双指针快速解决环形链表问题

双指针的用法

今天在Leetcode大杀特杀的时候,偶然看到一道题,使用了双指针的巧妙解法,在这里分享给大家! 题目 给定一个链表的头节点 head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。 常规解法 题目相关的标签,有哈希表和双指针,首先最常见就是使用HashSet。 沿着链表开始,逐步判断是否有重复的node,如果为true,那么这个节点就是循环开始的...

Independent Thinking

"如何去独立思考"

什么是独立思考的能力 What? 什么才是独立思考的能力呢? 是要有自己独到的观点,有建立在自己的价值观、世界观、人生观体系上成逻辑的观点。 关键就是有自己的一套观念体系,最开始是一片空白,通过人生的阅历去不断地丰富,不断地思考过程去建立起来。 再就是逻辑,是拥有一套自己的逻辑链,根据前提可以完善的推导出来的结果。 是不断地去质疑,去推翻,去重建的结果。 Why? 那...

如何使用Notion高效背单词

艾宾浩斯遗忘曲线

今天给大家介绍一个我常使用的笔记工具Notion,以及我是如何用它来背单词的。 Notion Notion是一个集成化,自由化的工具,可以有网页版,PC版,iPad版,手机版app,具有双向链接表可以进行自己的知识库建设。 在这里给大家介绍一下我是如何使用Notion来背单词的。 工具 Notion、欧路词典、Excel 单词来源 这里主要是记录我平时日常阅读会学到的单...

Java入门小项目--零钱通

Practice

总要有个开始 今天实现了一个Java的小项目,很简单,适合只有入门级的Java Learner进行项目练习 主要实现了以下几个功能 功能展示 初始界面 1 2 3 4 5 6 ============Menu=========== 1. 明细 2. 收入 3. 消费 4. 清除 5. 退...

贪心算法的证明

算法

贪心算法的证明 数学归纳法 反证法 问题:给定一组区间,最多保留多少个区间,可以使得区间之间互不重叠。 解答:贪心算法:按照区间的结尾排序,每次选择结尾最靠前的,并且和上一个不重叠的区间。 证明: 1、假设某一次的选择是[s[i],f[i]]; 其中f[i]是当前所有选择中结尾最早的。 2、假设这个不是最优解,如果最优解的个数为k,那么选择[s[i]...

R codebase(五)高级数据分析

使用R处理数据的转换

段首语 此系列文章用来做R语言的学习,以及对于使用R语言进行数据处理和作图的代码汇总,方便大家随时进行查找、使用。 上一篇:R codebase (四) 基本数据分析 持续更新 。。。

R codebase(四)基本数据分析

使用R处理数据的转换

段首语 此系列文章用来做R语言的学习,以及对于使用R语言进行数据处理和作图的代码汇总,方便大家随时进行查找、使用。 上一篇:R codebase (三) 基础作图与ggplot2 下一篇:R codebase (五) 高级数据分析 持续更新 。。。