自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 MySQL datetime 格式

MySQL

2023-09-14 20:02:13 39 1

原创 网络原理:OSI 和 UDP、TCP/IP 协议

上述这个过程称为 “封装” (这个封装不是面向对象的封装)

2023-09-13 22:16:32 116 2

原创 Linux操作篇

在桌面端,Linux大概落后20年服务器端,公司的大多数服务器端基本都是linux移动端,Android本质上是Linux,ios虽然不算linux,但是比表兄弟关系嵌入式,清一色的Linux。

2023-09-13 18:12:03 36 2

原创 多线程_基础和方法应用

(为了更好的理解多线程):磁盘和网络一起称为IO:为了使参与并发执行的每个程序,包含数据都能独立地运行,在操作系统中必须为之配置一个专门的数据结构,称为进程控制块进程与PCB是一一对应的,用户进程不能修改。组织形式是通过双向链表来把多喝PCB给串到一起,创建一个进程,本质上就是创建一个PCB这样的结构体对象,把它插入到链表中,任务管理器查看到进程列表,本质就是遍历这个PCB链表。:进程的身份标识(唯一):指向自己的内存是哪些:硬盘上的文件和其他资源。

2023-07-22 17:46:38 38

原创 JAVA_iO流_字节流和字符流

java中的iO流,主要是对数据(文件),进行输入、输出操作,主要分为了字节流和字符流。

2023-07-19 21:36:08 60

原创 算法分析-时间复杂度

》大O表示法只是对程序执行时间的一个估算(大O是一个渐进表示法,不会去表示精确的次数,cpu的运算速度很快,估计精确的没有意义。如果在一个大小为n循环中,循环变量按照一个常量C的进行倍数的递增或递减,这个循环的复杂度就为O(Log n).如果在一个大小为n循环中,循环变量是指数级的递增或递减,这个循环的复杂度就为O(Log log n).如果在一个大小为n循环中,循环变量按照一个常量C递增或递减,这个循环的复杂度就为O(n)当有连续的循环,我们计算时间复杂度为时间各个循环的复杂总和。

2023-07-18 10:04:43 36 1

原创 JAVA_线程安全问题

一个进程有多个线程组成,而在多线程的情况下,程序要抢占cpu的核心去执行代码,代码的执行顺序就会有变化。因为不同时间、不同的cpu内执行代码,就会产生无数种不同的情况,就需要保证者无数种线程去按照一定的顺序进行运行,来保证结果的正确性。如果是两个线程并发去执行这count++这个操作,就相当于两组load、add、save进行此时不同的线程调度顺序,就可能产生一些结果上的差异。显然答案并不是1_0000,而且两次的答案都不是一样的,程序并不符合需求,出现了bug,这也就是典型的线程安全问题。

2023-07-18 00:54:07 32 1

原创 【不得不看】希尔排序

然后,取,重复上述分组和排序的工作。当到达=1时, 所有记录在统一组内排好序。希尔排序是对直接插入排序的优化。

2023-05-17 20:26:01 36 1

原创 「不得不看」插入排序

从头到尾依次扫描未排序序列,将扫描到的每个元素插入有序序列的适当位置。(如果待插入的元素与有序序列中的某个元素相等,则将待插入元素插入到相等元素的后面。如果array[j] > tmp,然后比较array[j] 和tmp的大小。反之将tmp给到array[j+1]O(N),最好的情况,就是有序。但是一个本身就不稳定的排序,是不可以变成稳定的排序。:1、第一个数本身有序,i从第二个数开始。一个稳定的排序,可以实现为不稳定的。如果不要等号,就是不稳定的。:O(N^2),最坏情况。:稳定,因为没有换位。

2023-05-16 22:44:09 36

原创 「不得不看」的泡沫排序以及优化

2、如果其中一趟没有发生排序,证明他已经有序。在无序区间,通过相邻数的比较,将最大的数冒泡到无序区间的最后,持续这个过程,直到数组整体有序。java自带的Array包里面带得有Array.sort()方法。时间复杂度:O(N^2) 如果有序:O(N)代码的优化有两点:1、每次排完,最后一个是不需要排的。空间复杂度:O(1)

2023-05-16 08:58:34 47

原创 面试题 02.02. 返回倒数第 k 个节点

方法2:fast先k,在和slow同时走1步,fast为空,弹出。快慢指针:方法1:fast先k-1步,在和slow同时走1步,fast.next为空,弹出。实现一种算法,找出单向链表中倒数第 k 个节点。在考虑,严谨一点,就是k是否满足逻辑,head是否为空。代码优化:考虑不用遍历,就能够知道哪个是倒数的k节点。输入: 1->2->3->4->5 和 k = 2。注意:本题相对原题稍作改动。给定的 k 保证是有效的。

2023-05-12 11:47:28 28

原创 链表的中间节点

如果有两个中间结点,则返回第二个中间结点。,请你找出并返回链表的中间结点。想到快慢指针,就好写了。

2023-04-27 20:36:18 33 1

原创 剑指offer -》反转链表

4、还有其他写法,但要注意,cur为空之后,就不能让curNext = cur.next。3、在将pre改到当前节点,把cur改到下一个节点。2、cur先改当前节点的next引用。思路:1、设置三个引用,pre、cur、curNext。,请你反转链表,并返回反转后的链表。

2023-04-27 20:10:13 28 1

原创 合并两个升序链表

3、newHead赋值-1其实是傀儡节点,后面直接返回newHead.next就不用在考虑是list1还是list2的头,减少代码。2、其中一个为空的情况可以在最后判断,就不用单独去写。新链表是通过拼接给定的两个链表的所有节点组成的。思路:1、三种情况:两个都为空、一个为空、两个都不为空。将两个升序链表合并为一个新的。

2023-04-27 19:55:15 280 1

原创 给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点 。

链表提醒,删除所有key值

2023-04-26 21:14:05 146

空空如也

空空如也

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

TA关注的人

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