自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 《算法通关村—原来如此简单》

这题的关键在于如何判断某一层是否遍历完成了,我们可以使用一个变量来记录某一层的节点个数,那么该如何得到某一层的节点个数呢。打个比方,我们用一个遍历数组记录要遍历的元素,我们在遍历第一层的节点的时候,我们将它们的子节点也遍历一遍并加入到遍历数组当中,此时遍历数组中就包含了第一层的节点以及它的子节点(也就是第二层的节点),在遍历过程中将第一层的元素弹出,那么此时不就只剩下第二层的节点了吗,这样就可以获得到第二层的节点个数。LeetCode102 题目要求:给你一个二叉树,请你返回其按层序遍历得到的节点值。

2023-11-02 01:26:19 55

原创 《算法通关村—如何使用中序和后序来恢复一颗二叉树》

前序:1 2 3 4 5 6 8 7 9 10 11 12 13 15 14。中序:3 4 8 6 7 5 2 1 10 9 11 15 13 14 12。后序:8 7 6 5 4 3 2 10 15 14 13 12 11 9 1。

2023-09-24 22:59:51 72 1

原创 《算法通关村—三数和为零问题解析》

方法中判断条件的解析已写在代码中。

2023-09-23 00:53:13 129 1

原创 《算法通关村—队列问题解析》

在第一种写法中,在出队操作时,应该在判定为空后直接return或者将后续代码写在else块中,否则会报NullPointException。第二种:不带虚拟头节点的写法。第一种:带虚拟头节点的写法。

2023-09-21 23:45:18 67

原创 《算法通关村—括号匹配问题解析》

当给定字符串为“{{}})”,栈内两个左括号都因匹配成功而被弹出栈,此时只剩一个右括号,那么肯定是匹配不成功的,所以在匹配之前检查一下栈是否为空,为空直接返回false;当给定字符串为“{{}}(”,内两个左括号都因匹配成功而被弹出栈,此时只剩一个左括号,那么肯定是匹配不成功的,所以不能直接返回true。问题二:为什么最后的返回值是stack.isEmpty()而不是直接返回true?问题一:为什么在括号匹配之前要先进行判空?

2023-09-19 23:41:40 50

原创 算法通关村—如何基于数组(或者链表)实现栈

这种实现方法的top指针指向的是栈顶元素的上面一个地方,如想要top指向栈顶元素只需要在入栈时加个判断即可。

2023-09-18 23:54:47 21

原创 《算法通关村——双指针的妙用》

思路:建立两个指针,一个指针(left)指向数组头部,一个指针(right)指向数组尾部,当arr[left]==target时将left停下,然后right指针在向前遍历的同时将值赋给arr[left],直到arr[left]!=target时,指针left才能向前移动。

2023-09-17 01:33:53 47 1

原创 《算法通关村——不简单的数组增删改查》

②这里index设置为size主要是考虑到了添加元素比整个数组都大,此时不会进入for循环对index赋值,那么index的位置就是元素添加的位置,即数组的最后,若想将index设置为0也可以,不过要在for循环结束添加index=i;①size和length都是从下标一开始计算的,当size=length的时候就已经说明数组满了,这是再往数组中添加元素就会产生数组角标越界。③设置为size-1会导致遍历不到最后一个元素。④如果是size-1的话会导致最后一个元素丢失。对上述代码的四个问题进行解答。

2023-09-15 00:09:15 19

原创 算法通关村第二关---------指定区间反转问题解析

问题概述:你单链表的头指针 head 和两个整数 left 和 right ,其中 left <= right。请你反转从位置 left 到位置 right 的链表节点,返回反转后的链表。

2023-09-01 11:19:53 185 1

原创 算法通关村第二关——反转链表

自己尝试了一下一开始就将头节点连在虚拟节点后面,那么此时就只需要从头节点的后一个节点开始头插法到虚拟节点后面,此时却出现了栈溢出异常,debug后发现是head.next没有断开,导致了链表成环。

2023-08-30 20:56:21 240

原创 算法通关村第一关-链表经典问题之两个链表第一个公共子节点笔记

这是一道经典的链表问题,剑指offer52 先看一下题目:输入两个链表,找出它们的第一个公共节点。例如下面的两个链表:两个链表的头结点都是已知的,相交之后成为一个单链表,但是相交的位置未知,并且相交之前的结点数也是未知的,请设计算法找到两个链表的合并点。我们用两种方法来解决这道题:1.集合 2.字符串拼接首先将第一个链表存放到集合中,然后使用集合的contains()方法遍历第二个链表来判断是否有相同元素,主要代码如下:拼接字符串法我们假定A和B有相交的位置,以交点为中心,可以将两个链表分别分为le

2023-08-29 21:45:45 290 1

原创 算法通关村第一关-----链表青铜挑战笔记

链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。

2023-08-28 21:22:07 352 1

原创 多线程笔记

目录1.多线程的创建方式2.线程的生命周期3.线程安全4.线程通信5.常见问题1.多线程的创建有四种方法①继承Tread类class ThreadTest extends Thread{ public void run() {}}public class java2 { public static void main(String[] args) { ThreadTest threadTest = new ThreadTest(); thr

2021-07-01 20:06:29 60

空空如也

空空如也

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

TA关注的人

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