随笔分类 - 刷题
摘要:题目描述 输入一个字符串,打印出该字符串中字符的所有排列。 你可以以任意顺序返回这个字符串数组,但里面不能有重复元素。 示例: 输入:s = "abc"输出:["abc","acb","bac","bca","cab","cba"] 限制: 1 <= s 的长度 <= 8 Java代码 class
阅读全文
摘要:题目描述 给定n个整数,第i个为ai,请你统计有多少对无序对(i,j),满足i≠j且(ai&aj)>(ai⊕aj)。其中&代表二进制按位与,⊕代表二进制按位异或。无序对的意思是(i,j)被视为同一对。 输入描述 第一行输入正整数n,接下来一行n个整数表示ai。1≤n≤2×10^5,0≤ai≤10^
阅读全文
摘要:链接:https://ac.nowcoder.com/acm/contest/11230/D来源:牛客网 题目描述 勇敢的牛牛得到了一个数列 B,他认为这个数列不够可爱,于是他决定重新创造一个数列 A,规则如下。 对于所有的 i,需要保证 Ai 在 [1,Bi] 这个区间内。 现在,我们称数列 A
阅读全文
摘要:题目描述 给出一个数字 nnn ,求有多少个长度为 nnn 的序列 aaa (下标为 1∼n1\sim n1∼n )。要求满足 对于所有 i∈[1,n] ,0≤ai≤i。 ∑i=1n i×ai 是一个奇数。 因为答案可能很大,所以你需要输出答案对 998244353 取模。 输入描述: 第一行给
阅读全文
摘要:题目描述 给你两个整数 num 和 k ,考虑具有以下属性的正整数多重集: 每个整数个位数字都是 k 。所有整数之和是 num 。返回该多重集的最小大小,如果不存在这样的多重集,返回 -1 。 注意: 多重集与集合类似,但多重集可以包含多个同一整数,空多重集的和为 0 。个位数字 是数字最右边的数位
阅读全文
摘要:描述 给定一个二叉树根节点,请你判断这棵树是不是二叉搜索树。 二叉搜索树满足每个节点的左子树上的所有节点均严格小于当前节点且右子树上的所有节点均严格大于当前节点。 例: 图1 图2 数据范围:节点数量满足 1 \le n\le 10^4 \1≤n≤104 ,节点上的值满足 -2^{31} \le v
阅读全文
摘要:描述 将一个节点数为 size 链表 m 位置到 n 位置之间的区间反转,要求时间复杂度 O(n),空间复杂度 O(1)。例如:给出的链表为 1→2→3→4→5→NULL, m=2,n=4,返回 1→4→3→2→5→NULL. 数据范围: 链表长度 0<size≤1000,0<m≤n≤size,链表
阅读全文
摘要:描述 给定一个单链表的头结点pHead(该头节点是有值的,比如在下图,它的val是1),长度为n,反转该链表后,返回新链表的表头。 数据范围: 0≤n≤1000 要求:空间复杂度 O(1),时间复杂度 O(n) 。 如当输入链表{1,2,3}时, 经反转后,原链表变为{3,2,1},所以对应的输出为
阅读全文
摘要:题目描述 给定一个 n×m 的方格矩阵,每个方格要么是空格(用 . 表示),要么是障碍物(用 * 表示)。 如果两个空格存在公共边,则两空格视为相邻。 我们称一个不可扩展的空格集合为连通分量,如果集合中的任意两个空格都能通过相邻空格的路径连接。 这其实是一个典型的众所周知的关于连通分量(Connec
阅读全文
摘要:题目描述 序列化是将数据结构或对象转换为一系列位的过程,以便它可以存储在文件或内存缓冲区中,或通过网络连接链路传输,以便稍后在同一个或另一个计算机环境中重建。 设计一个算法来序列化和反序列化 二叉搜索树 。 对序列化/反序列化算法的工作方式没有限制。 您只需确保二叉搜索树可以序列化为字符串,并且可以
阅读全文
摘要:题目描述 给你一个整数数组 nums 和一个整数 k ,请你返回子数组内所有元素的乘积严格小于 k 的连续子数组的数目。 示例 1: 输入:nums = [10,5,2,6], k = 100输出:8解释:8 个乘积小于 100 的子数组分别为:[10]、[5]、[2],、[6]、[10,5]、[5
阅读全文
摘要:题目描述 共有 n 名小伙伴一起做游戏。小伙伴们围成一圈,按 顺时针顺序 从 1 到 n 编号。确切地说,从第 i 名小伙伴顺时针移动一位会到达第 (i+1) 名小伙伴的位置,其中 1 <= i < n ,从第 n 名小伙伴顺时针移动一位会回到第 1 名小伙伴的位置。 游戏遵循如下规则: 从第 1
阅读全文
摘要:题目描述: 你需要从空字符串开始 构造 一个长度为 n 的字符串 s ,构造的过程为每次给当前字符串 前面 添加 一个 字符。构造过程中得到的所有字符串编号为 1 到 n ,其中长度为 i 的字符串编号为 si 。 比方说,s = "abaca" ,s1 == "a" ,s2 == "ca" ,s3
阅读全文
摘要:题目描述 如果一个正整数,其各个数位上的数字均满足要么是 0,要么是 1,则称该数字为 01数。例如,1和 10 都是 01数。给定一个整数 n。请你计算,1∼n中有多少个 01数。 输入格式 一行,一个整数 n。 输出格式 一个整数,表示 01数的数量。 数据范围 前六个测试点满足 1≤n≤100
阅读全文
摘要:题目描述 编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target 。该矩阵具有以下特性: 每行的元素从左到右升序排列。 每列的元素从上到下升序排列。示例 1: 输入:matrix = [[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,22]
阅读全文
摘要:题目描述: 给你一个 下标从 0 开始 的数组 nums ,数组由若干 互不相同的 整数组成。你打算重新排列数组中的元素以满足:重排后,数组中的每个元素都 不等于 其两侧相邻元素的 平均值 。更公式化的说法是,重新排列的数组应当满足这一属性:对于范围 1 <= i < nums.length - 1
阅读全文
摘要:题目描述 给定一个长度为 n 的数组 v1,v2,…,vn。 初始时,数组中的所有元素都为 0。 接下来,可以对该数组进行若干次如下操作 对于第 i次操作(i 从 0开始),你可以: 要么选择其中一个元素 vpos,将其增加 ki。 要么不选择任何元素,直接跳过此次操作。 你可以随时停止操作(不进行
阅读全文
摘要:前言 同余定理 数论中的重要概念。给定一个正整数m,如果两个整数a和b满足a-b能够被m整除,即(a-b)/m得到一个整数,那么就称整数a与b对模m同余,记作a≡b(mod m)。对模m同余是整数的一个等价关系。 题目描述 给你一个整数数组 nums 和一个整数 k ,编写一个函数来判断该数组是否含
阅读全文
摘要:题目描述 给你两个 下标从 0 开始 的整数数组 servers 和 tasks ,长度分别为 n 和 m 。servers[i] 是第 i 台服务器的 权重 ,而 tasks[j] 是处理第 j 项任务 所需要的时间(单位:秒)。你正在运行一
阅读全文
摘要:题目描述 给你一个整数 n,请你判断该整数是否是 2 的幂次方。如果是,返回 true ;否则,返回 false 。如果存在一个整数 x 使得 n == 2x ,则认为 n 是 2 的幂次方。示例 1:输入:n = 1输出:true解释:20 = 1示例 2:输入:n = 16输出:true解释:2
阅读全文