leetcode
leetcode nowcoder
念来过倒字名qwq
最开始两年学的前端+Java后端技术栈,大三从头开始学C/C++方向,另外还有数据结构、算法、Linux、操作系统、网络、Linux系统编程、linux网络编程等,加油!
展开
-
【nowcoder】NC132 环形链表的约瑟夫问题
NC132 环形链表的约瑟夫问题编号为 1 到 n 的 n 个人围成一圈。从编号为 1 的人开始报数,报到 m 的人离开。下一个人继续从 1 开始报数。n-1 轮结束以后,只剩下一个人,问最后留下的这个人编号是多少?原创 2024-03-08 12:32:15 · 371 阅读 · 0 评论 -
【nowcoder】NC248 左叶子之和
NC248 左叶子之和计算给定二叉树的左叶子之和。树上叶子节点指没有后继节点的节点,左叶子指连向父节点的左侧的叶子节点。原创 2024-03-07 16:56:23 · 398 阅读 · 0 评论 -
【leetcode】110. 平衡二叉树
leetcode 110. 平衡二叉树给定一个二叉树,判断它是否是高度平衡的二叉树。本题中,一棵高度平衡二叉树定义为:一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1 。原创 2024-02-27 12:59:36 · 330 阅读 · 0 评论 -
【leetcode】二叉树的层序遍历 144. 二叉树的前序遍历 94. 二叉树的中序遍历 145. 二叉树的后序遍历
144. 二叉树的前序遍历 给你二叉树的根节点 root ,返回它节点值的 前序 遍历。(二叉树的深度优先遍历)94. 二叉树的中序遍历 给定一个二叉树的根节点 root ,返回 它的 中序 遍历 。145. 二叉树的后序遍历 给你一棵二叉树的根节点 root ,返回其节点值的 后序遍历 。二叉树的层序遍历(二叉树的广度优先遍历)原创 2024-02-24 12:37:58 · 369 阅读 · 0 评论 -
【leetcode】226. 翻转二叉树
leetcode 226. 翻转二叉树给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。原创 2024-02-22 12:32:24 · 377 阅读 · 0 评论 -
【leetcode】572. 另一棵树的子树
leetcode 572. 另一棵树的子树给你两棵二叉树 root 和 subRoot 。检验 root 中是否包含和 subRoot 具有相同结构和节点值的子树。如果存在,返回 true ;否则,返回 false 。二叉树 tree 的一棵子树包括 tree 的某个节点和这个节点的所有后代节点。tree 也可以看做它自身的一棵子树。原创 2024-02-18 12:37:23 · 359 阅读 · 0 评论 -
【leetcode】101. 对称二叉树
101. 对称二叉树 给你一个二叉树的根节点 root , 检查它是否轴对称。原创 2024-02-16 10:28:30 · 418 阅读 · 0 评论 -
【leetcode】判断二叉树是否完全二叉树
递归方式判断二叉树是否完全二叉树层序遍历判断二叉树是否完全二叉树原创 2024-02-14 20:58:30 · 543 阅读 · 0 评论 -
【leetcode】100. 相同的树
leetcode 100. 相同的树给你两棵二叉树的根节点 p 和 q ,编写一个函数来检验这两棵树是否相同。如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。原创 2024-02-13 09:03:49 · 463 阅读 · 0 评论 -
【leetcode】965. 单值二叉树
965. 单值二叉树 如果二叉树每个节点都具有相同的值,那么该二叉树就是单值二叉树。只有给定的树是单值二叉树时,才返回 true;否则返回 false。原创 2024-02-11 11:42:43 · 502 阅读 · 0 评论 -
【leetcode】104. 二叉树的最大深度
leetcode 104. 二叉树的最大深度给定一个二叉树 root ,返回其最大深度。二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。原创 2024-02-09 11:18:12 · 366 阅读 · 0 评论 -
【leetcode】622. 设计循环队列(Circular Queue)
leetcode 622. 设计循环队列设计你的循环队列实现。 循环队列是一种线性数据结构,其操作表现基于 FIFO(先进先出)原则并且队尾被连接在队首之后以形成一个循环。它也被称为“环形缓冲器”。循环队列的一个好处是我们可以利用这个队列之前用过的空间。在一个普通队列里,一旦一个队列满了,我们就不能插入下一个元素,即使在队列前面仍有空间。但是使用循环队列,我们能使用这些空间去存储新的值。计算循环队列数据个数:(rear + lgth - front) % leth。原创 2024-02-04 11:08:48 · 1175 阅读 · 1 评论 -
【leetcode】225. 用队列实现栈
225. 用队列实现栈请你仅使用两个队列实现一个后入先出(LIFO)的栈,并支持普通栈的全部四种操作(push、top、pop 和 empty)。实现 MyStack 类:void push(int x) 将元素 x 压入栈顶。int pop() 移除并返回栈顶元素。int top() 返回栈顶元素。boolean empty() 如果栈是空的,返回 true ;否则,返回 false 。 注意:你只能使用队列的基本操作 —— 也就是 push to back、peek/pop f原创 2024-02-02 12:52:55 · 343 阅读 · 0 评论 -
【leetcode】20. 有效的括号
leetcode 20. 有效的括号给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。每个右括号都有一个对应的相同类型的左括号。原创 2024-02-01 19:18:55 · 491 阅读 · 0 评论 -
【LeetCode】142. 环形链表 II
142. 环形链表 II:给定一个链表的头节点 head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。如果 pos 是 -1,则在该链表中没有环。注意:pos 不作为参数进行传递,仅仅是为了标识链表的实际情况。不允许修改 链表。原创 2024-01-31 09:48:30 · 368 阅读 · 0 评论 -
【leetcode】232. 用栈实现队列
leetcode 232. 用栈实现队列请你仅使用两个栈实现先入先出队列。队列应当支持一般队列支持的所有操作(push、pop、peek、empty):实现 MyQueue 类:void push(int x) 将元素 x 推到队列的末尾int pop() 从队列的开头移除并返回元素int peek() 返回队列开头的元素boolean empty() 如果队列为空,返回 true ;否则,返回 false说明:你 只能 使用标准的栈操作 —— 也就是只有 push to top, p原创 2024-01-29 21:02:29 · 505 阅读 · 0 评论 -
【leetcode】160. 相交链表
160. 相交链表:给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回 null 。原创 2024-01-29 11:47:48 · 370 阅读 · 0 评论 -
【nowcoder】链表分割
链表分割:现有一链表的头指针 ListNode* pHead,给一定值x,编写一段代码将所有小于x的结点排在其余结点之前,且不能改变原来的数据顺序,返回重新排列后的链表的头指针。原创 2024-01-27 21:40:53 · 400 阅读 · 0 评论 -
【nowcoder】链表的回文结构
链表的回文结构:对于一个链表,请设计一个时间复杂度为O(n),额外空间复杂度为O(1)的算法,判断其是否为回文结构。给定一个链表的头指针A,请返回一个bool值,代表其是否为回文结构。保证链表长度小于等于900。原创 2024-01-24 12:38:29 · 494 阅读 · 4 评论 -
【leetcode】138. 随机链表的复制
138. 随机链表的复制:给你一个长度为 n 的链表,每个节点包含一个额外增加的随机指针 random ,该指针可以指向链表中的任何节点或空节点。构造这个链表的 深拷贝。 深拷贝应该正好由 n 个 全新 节点组成,其中每个新节点的值都设为其对应的原节点的值。新节点的 next 指针和 random 指针也都应指向复制链表中的新节点,并使原链表和复制链表中的这些指针能够表示相同的链表状态。复制链表中的指针都不应指向原链表中的节点 。例如,如果原链表中有 X 和 Y 两个节点,其中 X.random -原创 2024-01-23 10:48:01 · 536 阅读 · 1 评论 -
【LeetCode】21. 合并两个有序链表
leetcode 21. 合并两个有序链表 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。原创 2024-01-23 10:47:23 · 431 阅读 · 0 评论 -
【nowcoder】链表中倒数第k个结点
链表中倒数第k个结点:输入一个链表,输出该链表中倒数第k个结点。原创 2024-01-22 18:14:07 · 407 阅读 · 1 评论 -
【LeetCode】876. 链表的中间结点
leetcode 876. 链表的中间结点 给你单链表的头结点 head ,请你找出并返回链表的中间结点。如果有两个中间结点,则返回第二个中间结点。原创 2024-01-18 21:33:01 · 410 阅读 · 2 评论 -
【LeetCode】203. 移除链表元素
203. 移除链表元素 给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点 。原创 2024-01-17 20:43:53 · 645 阅读 · 6 评论 -
【LeetCode】206. 反转链表
206. 反转链表:给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。原创 2024-01-17 11:52:34 · 484 阅读 · 0 评论 -
【leetcode】88. 合并两个有序数组(图解)
88. 合并两个有序数组给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目。请你 合并 nums2 到 nums1 中,使合并后的数组同样按 非递减顺序 排列。注意:最终,合并后数组不应由函数返回,而是存储在数组 nums1 中。为了应对这种情况,nums1 的初始长度为 m + n,其中前 m 个元素表示应合并的元素,后 n 个元素为 0 ,应忽略。nums2 的长度为 n 。原创 2023-11-04 14:51:39 · 460 阅读 · 5 评论 -
【leetcode】26. 删除有序数组中的重复项(图解)
26. 删除有序数组中的重复项给你一个 非严格递增排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。然后返回 nums 中唯一元素的个数。考虑 nums 的唯一元素的数量为 k ,你需要做以下事情确保你的题解可以被通过:更改数组 nums ,使 nums 的前 k 个元素包含唯一元素,并按照它们最初在 nums 中出现的顺序排列。nums 的其余元素与 nums 的大小不重要。返回 k 。原创 2023-11-04 13:15:49 · 482 阅读 · 3 评论 -
【leetcode】27. 原地移除元素(图解)
原地移除元素给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。原创 2023-11-04 12:25:56 · 214 阅读 · 0 评论 -
【leetcode】17.04 消失的数字
(1)利用异或交换律1. 与nums所有元素异或一遍;2. 与0-n的值异或,nums中没出现的值就是消失的数。(2)求和依次减去nums中的值1. 对nums元素求和;2. 依次减去nums中的元素,得到消失的数。原创 2023-11-04 11:22:51 · 292 阅读 · 0 评论 -
【C语言刷题】#define宏实现一个整数的二进制位的奇数位和偶数位交换
C语言 #define宏 实现一个整数的二进制补码 二进制奇数位和偶数位交换原创 2023-10-18 11:33:08 · 330 阅读 · 5 评论 -
【C语言刷题】模拟实现offsetof宏
offsetof宏 计算结构体成员的偏移量 结构体内存对齐 模拟实现offsetof宏原创 2023-10-18 10:57:37 · 282 阅读 · 5 评论 -
【模拟实现C语言库函数】atoi的简单模拟实现(没考虑异常情况)
C语言 atoi模拟实现原创 2023-09-29 14:17:05 · 127 阅读 · 2 评论 -
【模拟实现C语言库函数】string.h中的字符串操作函数
模拟实现 strlen、strcpy、strcmp、strcat、strncpy、strncat、strncmp、strstr原创 2023-09-22 10:23:13 · 696 阅读 · 7 评论 -
【模拟实现C语言库函数】string.h中的内存操作函数
模拟实现内存函数 memcpy memmove原创 2023-09-22 12:16:23 · 733 阅读 · 2 评论 -
【C语言解题】杨氏矩阵中查找目标元素
什么是杨氏矩阵?有一个数字矩阵,矩阵的每行从左到右是递增的,矩阵从上到下是递增的。原创 2023-09-08 19:31:10 · 458 阅读 · 4 评论