38.外观数列外观数列给定一个正整数 n,输出外观数列的第 n 项。 「外观数列」是一个整数序列,从数字 1 开始,序列中的每一项都是对前一项的描述。 1 → “1” 2 → “11”(1 个 1) 3 → “21”(2 个 1) 4 → “1211”(1 个 2,1 个 1) 5 → “111221”(1 个 1,1 个 2,2 个 1) 2023-09-14 中等 #中等难度 #字符串
37.解数独解数独编写一个程序,通过填充空格来解决数独问题。 数独的解法需 遵循如下规则:数字 1-9 在每一行只能出现一次;数字 1-9 在每一列只能出现一次;数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。 空白格用 ‘.’ 表示。 2023-09-12 困难 #困难难度 #回溯
36.有效的数独有效的数独请你判断一个 9 x 9 的数独是否有效。只需要根据以下规则,验证已经填入的数字是否有效即可。 数字 1-9 在每一行只能出现一次。 数字 1-9 在每一列只能出现一次。 数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。 注意:一个有效的数独(部分已被填充)不一定是可解的,只需要验证已填入的数字是否满足以上规则。 2023-09-09 中等 #中等难度 #哈希表
35.搜索插入位置搜索插入位置给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 2023-09-07 简单 #简单难度 #二分查找
34.在排序数组中查找元素的第一个和最后一个位置在排序数组中查找元素的第一个和最后一个位置给你一个按照非递减顺序排列的整数数组 nums,和一个目标值 target。请你找出给定目标值在数组中的开始位置和结束位置。 如果数组中不存在目标值 target,返回 [-1, -1]。 你必须设计并实现时间复杂度为 O(log n) 的算法解决此问题。 2023-09-04 中等 #中等难度 #二分查找
33.搜索旋转排序数组搜索旋转排序数组整数数组 nums 按升序排列,数组中的值 互不相同。 在传递给函数之前,nums 在预先未知的某个下标 k(0 <= k < nums.length)上进行了 旋转,使数组变为 [nums[k], nums[k+1], …, nums[n-1], nums[0], nums[1], …, nums[k-1]]。 给你旋转后的数组 nums 和一个整数 tar 2023-09-02 中等 #中等难度 #二分查找
31.下一个排列下一个排列整数数组的一个 排列 就是将其所有成员以序列或线性顺序排列。 整数数组的 下一个排列 是指其整数的下一个字典序更大的排列。如果不存在下一个更大的排列,那么这个数组必须重排为字典序最小的排列(即,其元素按升序排列)。 必须 原地 修改,只允许使用额外常数空间。 2023-08-28 中等 #中等难度 #数组