会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
zcctxr
博客园
首页
新随笔
联系
订阅
管理
2023年9月
代码随想录算法训练营第十四天|二叉树的递归法、迭代法
摘要: ## 二叉树的递归遍历(前中后序遍历-递归法与迭代法) **递归三部曲:** 1. **确定递归函数的参数和返回值** 2. **确定终止条件** 3. **确定单层递归的逻辑** ### 递归法对二叉树进行前中后序遍历(力扣144.145.94.) ```java // 前序遍历·递归·LC144
阅读全文
posted @ 2023-09-05 21:49 zccccc!
阅读(22)
评论(0)
推荐(0)
2023年8月
代码随想录算法训练营第十三天|单调数列:滑动窗口最大值(力扣239.)、优先级队列:前k个高频元素(力扣347.)
摘要: ## 单调数列:滑动窗口最大值(力扣239.) - 给定滑动窗口的范围,求每个滑动窗口范围内的最大值 - 使用单调队列实现 - 对于最大值数字前面的数字不存入数列,对于最大值数字后面的数字存入数列中 - 单调队列中数字的大小呈递减顺序 - pop(value):如果窗口移除的元素等于单调队列的队口元
阅读全文
posted @ 2023-08-15 22:56 zccccc!
阅读(18)
评论(0)
推荐(0)
代码随想录算法训练营第十一天|力扣20.有效的括号、力扣1047.删除字符串中所有相邻重复项、力扣150.逆波兰表达式求值
摘要: ## 有效的括号(力扣20.) - 括号匹配时使用栈解决的经典问题 - 题意其实就像我们在写代码的过程中,要求括号的顺序是一样的 - 有左括号,那么在对应位置则必须有右括号 - 第一种情况:已经遍历完了字符串,但是栈不为空,说明有相应的左括号没有右括号来匹配,所以return false 第二种情况
阅读全文
posted @ 2023-08-15 19:19 zccccc!
阅读(16)
评论(0)
推荐(0)
代码随想录算法训练营第十天|力扣232.用栈实现队列、力扣225.用队列实现栈
摘要: # 栈与队列 ## 理论知识 栈提供push 和 pop 等等接口,所有元素必须符合先进后出规则,所以栈不提供走访功能,也不提供迭代器(iterator)。 不像是set 或者map 提供迭代器iterator来遍历所有元素。 **栈是以底层容器完成其所有的工作,对外提供统一的接口,底层容器是可插拔
阅读全文
posted @ 2023-08-09 23:15 zccccc!
阅读(16)
评论(0)
推荐(0)
(未完全掌握)代码随想录算法训练营第八、九天|KMP算法;力扣28.实现strStr(),力扣459.重复的子字符串
摘要: ## KMP算法(没掌握) - 主要功能:字符串匹配 - 理论:检测文本串中是否出现过模式串 - 前缀就是包含首字母不包含尾字母的所有子串 - 后缀就是包含尾字母不包含首字母的所有子串 - 最长相等前后缀:对子串分别分析,从左向右 - **前缀表是用来回退的,它记录了模式串与主串(文本串)不匹配的时
阅读全文
posted @ 2023-08-09 21:49 zccccc!
阅读(19)
评论(0)
推荐(0)
代码随想录算法训练营第七天|力扣334.反转字符串、力扣541.反转字符串II、剑指offer05.替换空格、力扣151.反转字符串、剑指offer58-II左旋转字符串里的单词
摘要: # 字符串 ## 反转字符串(力扣344.) - **如果题目关键的部分直接用库函数就可以解决,建议不要使用库函数。** 毕竟面试官一定不是考察你对库函数的熟悉程度, 如果使用python和java 的同学更需要注意这一点,因为python、java提供的库函数十分丰富。 - **如果库函数仅仅是
阅读全文
posted @ 2023-08-06 11:47 zccccc!
阅读(16)
评论(0)
推荐(0)
代码随想录算法训练营第六天|力扣454.四数相加II、力扣383.赎金信、力扣15.三数之和、力扣18.四数之和
摘要: ## 四数相加II(力扣454.) - 前两个数组的值直接遍历,并将和存入map中,key为和,value为出现次数 - 后两个数组再次遍历,在map中寻找是否存在0-(c+d),若存在,count+=value - for(a:A){//遍历AB - for(b:B){ - map[a+b]++;
阅读全文
posted @ 2023-08-04 17:01 zccccc!
阅读(32)
评论(0)
推荐(0)
2023年7月
代码随想录算法训练营第五天|力扣242.有效的字母异位词、力扣242.两个数组的交集、力扣202.快乐数、力扣1.两数之和
摘要: # 哈希表 ## 哈希表理论基础 哈希表,又称为散列表(Hash Table),是根据关键码的值而直接进行访问的数据结构 其中,数组就是一张哈希表;表中关键码就是数组的索引下标,然后通过下标直接访问数组中的元素 - 哈希表解决的问题:一般哈希表都是用来快速判断一个元素是否出现在集合中 - 哈希函数:
阅读全文
posted @ 2023-07-31 23:26 zccccc!
阅读(34)
评论(0)
推荐(0)
代码随想录算法训练营第四天|力扣24.两两交换链表节点、力扣19.删除链表的倒数第N个结点、力扣面试02.07链表相交、力扣142.环形链表
摘要: ## 两两交换链表中的节点(力扣24.) - dummyhead .next = head; - cur = dummyhead; - while(cur.next!=null&&cur.next.next!=null) - temp = cur.next; - temp1=cur.next.nex
阅读全文
posted @ 2023-07-30 23:43 zccccc!
阅读(28)
评论(0)
推荐(0)
代码随想录算法训练营第三天|力扣203.移除链表元素、力扣707.设计链表、力扣206.反转链表
摘要: # 链表 - 定义:通过指针串联在一起的线性结构,每一个节点由两个部分组成:数据域和指针域(存放指向下一个节点的指针),最后一个节点的指针域指向null,即为空指针。 ## 链表类型 1. 单链表 2. 双链表 3. 循环链表,即链表首尾相连,可以解决约瑟夫环问题 ## 链表的存储方式 数组在内存中
阅读全文
posted @ 2023-07-30 11:20 zccccc!
阅读(37)
评论(0)
推荐(0)
下一页
公告