数据结构
常用算法
排序算法
查找算法
反转链表
反转链表,题目,力扣第 206 题,反转链表,示例:输入: 1->2->3->4->5->NULL,输出: 5->4->3->2->1->NULL
两两交换链表结点
两两交换链表结点,题目,力扣第 24 题,给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。
平衡二叉树
平衡二叉树,题目,力扣第 110 题,平衡二叉树。给定一个二叉树,判断它是否是高度平衡的二叉树。
两数之和
两数之,描述,leetcode 官方第 1 题,给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回它们的数组下标。
整数反转
整数反转,描述,leetcode 官方第 7 题,给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。
链表按位求和
链表按位求和,描述,leetcode 官方第 2 题。给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。请你将两个数相加。
无重复字符的最长子串
无重复字符的最长子串,描述,leetcode 官方第 3 题。给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。
寻找两个正序数组的中位数
寻找两个正序数组的中位数,描述,leetcode 官方第 4 题。给定两个大小为 m 和 n 的正序(从小到大)数组 `nums1` 和 `nums2`。请你找出并返回这两个正序数组的中位数。
二进制求和
二进制求和,描述,leetcode 官方第 67 题。给你两个二进制字符串,返回它们的和(用二进制表示)。输入为非空字符串且只包含数字 `1` 和 `0`。
整数转罗马数字
整数转罗马数字,罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。例如, 罗马数字 2 写做 II ,即为两个并列的 1。12 写做 XII ,即为 X + II 。 27 写做 XXVII, 即为 XX + V + II 。
打家劫舍
打家劫舍,描述,力扣第 198 题。你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统。
零钱兑换
零钱兑换,力扣第 322 题。给定不同面额的硬币 coins 和一个总金额 amount。编写一个函数来计算可以凑成总金额所需的最少的硬币个数。如果没有任何一种硬币组合能组成总金额,返回 -1。
不同路径
不同路径,描述,力扣第 62 题。一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。机器人每次只能向下或者向右移动一步。
爱生气的书店老板
爱生气的书店老板,描述力扣第 1052 题。今天,书店老板有一家店打算试营业 customers.length 分钟。每分钟都有一些顾客(customers[i])会进入书店,所有这些顾客都会在那一分钟结束后离开。
翻转图像
翻转图像,描述,力扣第 832 题。给定一个二进制矩阵 A,我们想先水平翻转图像,然后反转图像并返回结果。
比特位计数
比特位计数,描述,给定一个非负整数 num。对于 0 ≤ i ≤ num 范围中的每个数字 i ,计算其二进制数中的 1 的数目并将它们作为数组返回。
旋转链表
旋转链表,描述,给定一个链表,旋转链表,将链表每个节点向右移动 *k* 个位置,其中 *k* 是非负数。
最长回文子串
最长回文子串,描述,leetcode 官方第 5 题,给你一个字符串 s,找到 s 中最长的回文子串。
颜色分类
颜色分类,描述,力扣第 75 题。给定一个包含红色、白色和蓝色,一共 n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。
二分查找
二分查找,描述,leetcode 官方第 704 题,给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。
首页
知识体系
实战
随笔
搜索