自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(46)
  • 收藏
  • 关注

原创 Leetcode1512. 好数对的数目(C++思路与代码)

给你一个整数数组 nums 。如果一组数字 (i,j) 满足 nums[i] == nums[j] 且 i < j ,就可以认为这是一组 好数对 。返回好数对的数目。示例 1:输入:nums = [1,2,3,1,1,3]输出:4解释:有 4 组好数对,分别是 (0,3), (0,4), (3,4), (2,5) ,下标从 0 开始。思路:使用数组统计0-100之间出现的次数,统计时候利用n*(n-1)/2。class Solution {public: int numId

2021-01-29 11:19:28 365

原创 Leetcode1365. 有多少小于当前数字的数字(C++思路与代码)

给你一个数组 nums,对于其中每个元素 nums[i],请你统计数组中比它小的所有数字的数目。换而言之,对于每个 nums[i] 你必须计算出有效的 j 的数量,其中 j 满足 j != i 且 nums[j] < nums[i] 。以数组形式返回答案。示例 1:输入:nums = [8,1,2,2,3]输出:[4,0,1,1,3]解释:对于 nums[0]=8 存在四个比它小的数字:(1,2,2 和 3)。对于 nums[1]=1 不存在比它小的数字。对于 nums[2]=2 存

2021-01-29 11:08:33 337 1

原创 Leetcode1207. 独一无二的出现次数(C++思路与代码)

给你一个整数数组 arr,请你帮忙统计数组中每个数的出现次数。如果每个数的出现次数都是独一无二的,就返回 true;否则返回 false。示例 1:输入:arr = [1,2,2,1,1,3]输出:true解释:在该数组中,1 出现了 3 次,2 出现了 2 次,3 只出现了 1 次。没有两个数的出现次数相同。思路:首先用哈希表建立数组每个数字和出现次数的映射,再将哈希表中出现的次数放入哈希集中。判断哈希表和哈希集的大小是否相同。class Solution {public: bo

2021-01-29 10:37:39 348

原创 Leetcode1189. “气球” 的最大数量(C++思路与代码)

给你一个字符串 text,你需要使用 text 中的字母来拼凑尽可能多的单词 “balloon”(气球)。字符串 text 中的每个字母最多只能被使用一次。请你返回最多可以拼凑出多少个单词 “balloon”。示例 1:输入:text = “nlaebolko”输出:1思路:使用哈希表建立单词中每个字母与出现次数的映射,因为气球单词是balloon,根据单词中每个字母数量判断text中这几个字母出现最小数。class Solution {public: int maxNumberOf

2021-01-29 10:15:40 280 1

原创 Leetcode1160. 拼写单词(C++思路与代码)

给你一份『词汇表』(字符串数组) words 和一张『字母表』(字符串) chars。假如你可以用 chars 中的『字母』(字符)拼写出 words 中的某个『单词』(字符串),那么我们就认为你掌握了这个单词。注意:每次拼写(指拼写词汇表中的一个单词)时,chars 中的每个字母都只能用一次。返回词汇表 words 中你掌握的所有单词的 长度之和。示例 1:输入:words = [“cat”,“bt”,“hat”,“tree”], chars = “atach”输出:6解释:可以形成字符串

2021-01-28 17:58:03 203

原创 Leetcode1002. 查找常用字符(C++思路与代码)

给定仅有小写字母组成的字符串数组 A,返回列表中的每个字符串中都显示的全部字符(包括重复字符)组成的列表。例如,如果一个字符在每个字符串中出现 3 次,但不是 4 次,则需要在最终答案中包含该字符 3 次。你可以按任意顺序返回答案。示例 1:输入:[“bella”,“label”,“roller”]输出:[“e”,“l”,“l”]思路:利用数组来统计26个小写字母出现的次数。首先建立一个26的数组cnt,这个数组是统计子串中所有单词出现相同字母的次数。遍历每个单词,再建立一个数组tmp当前每个单

2021-01-28 17:09:53 181

原创 Leetcode961. 重复 N 次的元素(C++思路与代码)

在大小为 2N 的数组 A 中有 N+1 个不同的元素,其中有一个元素重复了 N 次。返回重复了 N 次的那个元素。示例 1:输入:[1,2,3,3]输出:3思路:使用哈希表,建立数字与出现次数的映射。只要发现有一个数字出现次数大于1,这就是要找的数字。class Solution {public: int repeatedNTimes(vector<int>& A) { unordered_map<int, int> numCnt;

2021-01-28 11:07:25 136

原创 Leetcode884. 两句话中的不常见单词(C++思路与代码)

给定两个句子 A 和 B 。 (句子是一串由空格分隔的单词。每个单词仅由小写字母组成。)如果一个单词在其中一个句子中只出现一次,在另一个句子中却没有出现,那么这个单词就是不常见的。返回所有不常用单词的列表。您可以按任何顺序返回列表。示例 1:输入:A = “this apple is sweet”, B = “this apple is sour”输出:[“sweet”,“sour”]思路:把字符串A和B连接起来。这样问题转化为合并后的字符串中只出现一次的字符串。用哈希表建立每个单词与出现次

2021-01-28 10:48:09 159

原创 Leetcode771. 宝石与石头(C++思路与代码)

给定字符串J 代表石头中宝石的类型,和字符串 S代表你拥有的石头。 S 中每个字符代表了一种你拥有的石头的类型,你想知道你拥有的石头中有多少是宝石。J 中的字母不重复,J 和 S中的所有字符都是字母。字母区分大小写,因此"a"和"A"是不同类型的石头。示例 1:输入: J = “aA”, S = “aAAbbbb”输出: 3思路:使用哈希集将字符串J放进,然后遍历字符串S。如果S中的字符在哈希集中出现+1。class Solution {public: int numJewelsIn

2021-01-28 10:26:58 161

原创 Leetcode706. 设计哈希映射(C++思路与代码)

不使用任何内建的哈希表库设计一个哈希映射具体地说,你的设计应该包含以下的功能put(key, value):向哈希映射中插入(键,值)的数值对。如果键对应的值已经存在,更新这个值。get(key):返回给定的键所对应的值,如果映射中不包含这个键,返回-1。remove(key):如果映射中存在这个键,删除这个数值对。思路:和上一个设计哈希集一样,用vector通过只为了通过。class MyHashMap {public: /** Initialize your data struc

2021-01-28 10:16:07 175

原创 Leetcode705. 设计哈希集合(C++思路与代码)

不使用任何内建的哈希表库设计一个哈希集合具体地说,你的设计应该包含以下的功能add(value):向哈希集合中插入一个值。contains(value) :返回哈希集合中是否存在这个值。remove(value):将给定值从哈希集合中删除。如果哈希集合中没有这个值,什么也不做。思路:只考虑通过测试,使用vector就行。感觉这题应该考的链地址法。class MyHashSet {public: /** Initialize your data structure here. */

2021-01-28 10:16:01 144 1

原创 Leetcode645. 错误的集合(C++思路与代码)

集合 s 包含从 1 到 n 的整数。不幸的是,因为数据错误,导致集合里面某一个数字复制了成了集合里面的另外一个数字的值,导致集合 丢失了一个数字 并且 有一个数字重复 。给定一个数组 nums 代表了集合 S 发生错误后的结果。请你找出重复出现的整数,再找到丢失的整数,将它们以数组的形式返回。示例 1:输入:nums = [1,2,2,4]输出:[2,3]思路:统计每个数字出现的次数,然后再遍历次数数组,如果某个数字出现了两次就是重复数,如果出现了0次,就是缺失的数。class Solut

2021-01-27 20:38:47 107

原创 Leetcode599. 两个列表的最小索引总和(C++思路与代码)

假设Andy和Doris想在晚餐时选择一家餐厅,并且他们都有一个表示最喜爱餐厅的列表,每个餐厅的名字用字符串表示。你需要帮助他们用最少的索引和找出他们共同喜爱的餐厅。 如果答案不止一个,则输出所有答案并且不考虑顺序。 你可以假设总是存在一个答案。示例 1:输入:[“Shogun”, “Tapioca Express”, “Burger King”, “KFC”][“Piatti”, “The Grill at Torrey Pines”, “Hungry Hunter Steakhouse”, “

2021-01-27 20:06:30 119

原创 Leetcode594. 最长和谐子序列(C++思路与代码)

和谐数组是指一个数组里元素的最大值和最小值之间的差别正好是1。现在,给定一个整数数组,你需要在所有可能的子序列中找到最长的和谐子序列的长度。示例 1:输入: [1,3,2,2,5,2,3,7]输出: 5原因: 最长的和谐数组是:[3,2,2,2,3].思路:使用哈希表,建立每个数字跟其出现次数之间的映射,然后遍历时查找当前数字+1是否存在,存在就更新res。哈希表中是键值对,遍历哈希表时候查找first。class Solution {public: int findLHS(vec

2021-01-27 19:43:54 268

原创 Leetcode575. 分糖果(C++思路与代码)

给定一个偶数长度的数组,其中不同的数字代表着不同种类的糖果,每一个数字代表一个糖果。你需要把这些糖果平均分给一个弟弟和一个妹妹。返回妹妹可以获得的最大糖果的种类数。示例 1:输入: candies = [1,1,2,2,3,3]输出: 3解析: 一共有三种种类的糖果,每一种都有两个。最优分配方案:妹妹获得[1,2,3],弟弟也获得[1,2,3]。这样使妹妹获得糖果的种类数最多思路:使用哈希集,将数组元素放入。假设数组中总长度为n,那么妹妹获得最大的也就是n/2。而哈希集中的元素表示一共有多少种

2021-01-27 13:29:28 944

原创 Leetcode500. 键盘行(C++思路与代码)

你一个字符串数组 words ,只返回可以使用在 美式键盘 同一行的字母打印出来的单词。键盘如下图所示。示例 1:输入:words = [“Hello”,“Alaska”,“Dad”,“Peace”]输出:[“Alaska”,“Dad”]思路:首先我们建立三个哈希集把对应三行的字母放入。接下来遍历字符串数组,对每个单词进行遍历,统计单词中每个字母出现在哪个哈希集中。然后置为1,如果三个标志相加大于1说明该单词肯定不是同一行里面。如果加起来是1,就是题中要找的单词放进res中。class Solu

2021-01-27 13:20:49 121

原创 Leetcode463. 岛屿的周长(C++思路与代码)

给定一个 row x col 的二维网格地图 grid ,其中:grid[i][j] = 1 表示陆地, grid[i][j] = 0 表示水域。网格中的格子 水平和垂直 方向相连(对角线方向不相连)。整个网格被水完全包围,但其中恰好有一个岛屿(或者说,一个或多个表示陆地的格子相连组成的岛屿)。岛屿中没有“湖”(“湖” 指水域在岛屿内部且不和岛屿周围的水相连)。格子是边长为 1 的正方形。网格为长方形,且宽度和高度均不超过 100 。计算这个岛屿的周长。思路:对于每个格子的四条边分别来处理,首先是左

2021-01-27 13:06:08 218

原创 Leetcode409. 最长回文串(C++思路与代码)

给定一个包含大写字母和小写字母的字符串,找到通过这些字母构造成的最长的回文串。在构造过程中,请注意区分大小写。比如 “Aa” 不能当做一个回文字符串。注意:假设字符串的长度不会超过 1010。示例 1:输入:“abccccdd”思路:创建一个哈希表,把字母放入并且统计字母出现的次数。遍历哈希表,加上每个字母出现的次数。如果是奇数那么结果就减去1,同时我们设置一个flag,如果出现次数有奇数那么flag设置为true。返回判断flag是真还是假,是真结果+1,偶数不加。class Solut

2021-01-27 11:57:02 254

原创 Leetcode389. 找不同(C++思路与代码)

给定两个字符串 s 和 t,它们只包含小写字母。字符串 t 由字符串 s 随机重排,然后在随机位置添加一个字母。请找出在 t 中被添加的字母。示例 1:输入:s = “abcd”, t = “abcde”输出:“e”解释:‘e’ 是那个被添加的字母。思路:将字符串s装入哈希表中并且统计出现次数,遍历字符串t每个字符出现就减去1。如果某个字母对应的值小于0,那就说明这个字母在原来字符串中未出现返回。class Solution {public: char findTheDiffer

2021-01-27 11:32:31 508

原创 Leetcode387. 字符串中的第一个唯一字符(C++思路与代码)

给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。示例:s = “leetcode”返回 0思路:建立一个哈希表,存放字符串每个字符出现的次数。然后再遍历该字符串,如果该字符出现的次数为1返回即可,不存在返回-1。class Solution {public: int firstUniqChar(string s) { unordered_map<char,int> map; for(auto c:s){

2021-01-27 00:43:39 180

原创 Leetcode350. 两个数组的交集 II(C++思路与代码)

给定两个数组,编写一个函数来计算它们的交集。示例 1:输入:nums1 = [1,2,2,1], nums2 = [2,2]输出:[2,2]思路:上一道题是只存放重复的元素,这道题需要所有重复的。所以使用哈希表,将数组1放进哈希表中并且统计出现的次数,然后遍历数组2,如果数组2中的数字在表中出现那么放入结果res中,并且出现次数自减一次,返回数组。class Solution {public: vector<int> intersect(vector<int>&

2021-01-27 00:09:47 122

原创 Leetcode349. 两个数组的交集(C++思路与代码)

给定两个数组,编写一个函数来计算它们的交集。示例 1:输入:nums1 = [1,2,2,1], nums2 = [2,2]输出:[2]思路:使用哈希集,利用其去重复的特性。首先将数组1排序后放进哈希集,然后遍历数组2.发现数组2中的数字在数组1中出现过,那么插入到结果中。当然存放结果也是用到哈希集,这样可以去重。然后返回数组的形式即可。class Solution {public: vector<int> intersection(vector<int>&am

2021-01-26 23:59:13 140 1

原创 Leetcode290. 单词规律(C++思路与代码)

给定一种规律 pattern 和一个字符串 str ,判断 str 是否遵循相同的规律。这里的 遵循 指完全匹配,例如, pattern 里的每个字母和字符串 str 中的每个非空单词之间存在着双向连接的对应规律。示例1:输入: pattern = “abba”, str = “dog cat cat dog”输出: true思路:首相创建一个char,string的哈希表,题目中的要求是每个字符和每个字符串中的单词是一一对应关系的。第一步我们判断规律中的字符例如’a‘是否出现过。如果出现,那么判

2021-01-26 23:06:29 478

原创 Leetcode242. 有效的字母异位词(C++思路与代码)

给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。示例 1:输入: s = “anagram”, t = “nagaram”输出: true示例 2:输入: s = “rat”, t = “car”输出: false思路:首先要理解什么是字母的异位,就是两个单词字母出现的频率是一样的只是位置不同。那直接对两个字符串进行排序,然后判断是否相等即可。class Solution {public: bool isAnagram(string s, stri

2021-01-26 21:45:10 196

原创 Leetcode219. 存在重复元素 II(C++实现与代码)

给定一个整数数组和一个整数 k,判断数组中是否存在两个不同的索引 i 和 j,使得 nums [i] = nums [j],并且 i 和 j 的差的 绝对值 至多为 k。示例 1:输入: nums = [1,2,3,1], k = 3输出: true思路:使用哈希表。首先还是遍历数组,并且在表中查找当前数字是否出现过。如果查到已经出现,那么判断当前对应的索引减去已经出现的位置是否满足小于等于k。满足返回true,不满足更新对应的下标。没出现过那么就装入哈希表中。class Solution {

2021-01-26 21:22:23 106

原创 Leetcode217. 存在重复元素(C++思路与代码)

给定一个整数数组,判断是否存在重复元素。如果存在一值在数组中出现至少两次,函数返回 true 。如果数组中每个元素都不相同,则返回 false 。示例 1:输入: [1,2,3,1]输出: true思路:可以使用哈希表,遍历数组时候判断该数字在哈希表是否出现过,如果这个数已经出现过直接返回true,否则将数组元素装进去哈希表。class Solution {public: bool containsDuplicate(vector<int>& nums) {

2021-01-26 21:01:22 196

原创 Leetcode205. 同构字符串(C++实现与代码)

给定两个字符串 s 和 t,判断它们是否是同构的。如果 s 中的字符可以按某种映射关系替换得到 t ,那么这两个字符串是同构的。每个出现的字符都应当映射到另一个字符,同时不改变字符的顺序。不同字符不能映射到同一个字符上,相同字符只能映射到同一个字符上,字符可以映射到自己本身。示例 1:输入:s = “egg”, t = “add”输出:true思路:创建两个哈希表,分别建立对应的映射。发现映射关系对应不上返回错即可。class Solution {public: bool isIs

2021-01-26 20:44:10 185

原创 Leetcode204. 计数质数(C++思路与代码)

统计所有小于非负整数 n 的质数的数量。示例 1:输入:n = 10输出:4解释:小于 10 的质数一共有 4 个, 它们是 2, 3, 5, 7 。思路:首先质数的定义是指约数除了1和本身,计算质数个数的方法是厄拉多塞筛法。大体意思是比如我们找出100以内的质数。首先找出100以内2的倍数,这些数肯定不是质数,再找出3的倍数依次类推。代码实现我们可以定义一个100以内的布尔值数组,初始值都为1.然后按照上述思路将那些不是质数的数变为0.class Solution {public:

2021-01-26 20:34:37 229

原创 Leetcode202. 快乐数(C++思路与代码)

编写一个算法来判断一个数 n 是不是快乐数。「快乐数」定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然后重复这个过程直到这个数变为 1,也可能是 无限循环 但始终变不到 1。如果 可以变为 1,那么这个数就是快乐数。如果 n 是快乐数就返回 True ;不是,则返回 False 。示例:输入:19输出:true解释:12 + 92 = 8282 + 22 = 6862 + 82 = 10012 + 02 + 02 = 1思路:按照快乐数的定义,如果再没有结果

2021-01-26 20:19:14 982

原创 Leetcode92. 反转链表 II(C++思路与代码)

反转从位置 m 到 n 的链表。请使用一趟扫描完成反转。说明:1 ≤ m ≤ n ≤ 链表长度。示例:输入: 1->2->3->4->5->NULL, m = 2, n = 4输出: 1->4->3->2->5->NULL思路:首先移动m-1步到达开始移动节点的前驱,定义cur指向反转的第一个节点。反转的步骤是1-2-3-4-5第一步1-3-2-4-5然后1-4-3-2-5,画个图思考一下具体怎么做的。/** * Definiti

2021-01-13 18:04:42 254

原创 Leetcode86. 分隔链表(C++思路与代码)

给你一个链表和一个特定值 x ,请你对链表进行分隔,使得所有小于 x 的节点都出现在大于或等于 x 的节点之前。你应当保留两个分区中每个节点的初始相对位置。示例:输入:head = 1->4->3->2->5->2, x = 3输出:1->2->2->4->3->5思路:将链表分为两部分,一部分小于x,另一部分大于等于x的。遍历head,完成后将两个链表接起来即可。/** * Definition for singly-linked

2021-01-13 17:07:47 143 1

原创 Leetcode82. 删除排序链表中的重复元素 II(C++思路与代码)

给定一个排序链表,删除所有含有重复数字的节点,只保留原始链表中 没有重复出现 的数字。示例 1:输入: 1->2->3->3->4->4->5输出: 1->2->5思路:设置一个哑结点,一个工作节点pre永远指向不重复的元素值。遍历链表,若head与head->next的值不相同pre=head,并且移动head。如果值相同分类讨论,若遇到连续几个相同的那么head一直移动,直到该重复序列中最后一个,然后跳出循环。pre指向该...

2021-01-13 16:55:28 99

原创 Leetcode61. 旋转链表(C++思路与代码)

给定一个链表,旋转链表,将链表每个节点向右移动 k 个位置,其中 k 是非负数。示例 1:输入: 1->2->3->4->5->NULL, k = 2输出: 4->5->1->2->3->NULL解释:向右旋转 1 步: 5->1->2->3->4->NULL向右旋转 2 步: 4->5->1->2->3->NULL思路:首先计算出链表的长度,然后将尾节点指向头结点形成环。

2021-01-12 17:28:23 115

原创 Leetcode24. 两两交换链表中的节点(C++思路与代码)

给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。你不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。输入:head = [1,2,3,4]输出:[2,1,4,3]思路:设置哑结点,交换相邻两个节点。设置工作指针和中间变量即可。画图可以掌握逻辑,不会出错。/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListN

2021-01-12 13:39:54 115

原创 Leetcode19. 删除链表的倒数第N个节点(C++思路与代码)

给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。示例:给定一个链表: 1->2->3->4->5, 和 n = 2.当删除了倒数第二个节点后,链表变为 1->2->3->5.思路:使用双指针。创建一个哑结点,定义快慢指针分别从哑结点开始。首先让快指针走n步,之后再多走一步。因为这样快指针指向null时候,慢指针是删除节点的前一个,为了方便删除。/** * Definition for singly-linked list. * st

2021-01-12 12:59:29 150

原创 Leetcode2. 两数相加(C++思路与代码)

给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0 开头。输入:l1 = [2,4,3], l2 = [5,6,4]输出:[7,0,8]解释:342 + 465 = 807.思路:创建一个新的链表,cur为工作指针。考虑进位,每位上的和用sum保存,注意一些细节问题。/** * Definition for singly-

2021-01-12 12:45:21 160

原创 Leetcode234. 回文链表(C++思路与实现)

请判断一个链表是否为回文链表。示例 1:输入: 1->2输出: false思路:双指针,定义一个快指针。快指针=2倍速的慢指针,反转链表,直到快指针达到尾节点,慢指针达到中间节点,停止反转。将反转后的链表(链表前半部分)和链表后半部分进行比较,若数值相同则为回文链表。/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * List

2021-01-11 20:15:28 320

原创 Leetcode1290. 二进制链表转整数(C++思路与代码)

给你一个单链表的引用结点 head。链表中每个结点的值不是 0 就是 1。已知此链表是一个整数数字的二进制表示形式。请你返回该链表所表示数字的 十进制值 。输入:head = [1,0,1]输出:5解释:二进制数 (101) 转化为十进制数 (5)思路:核心就一点,如何将二进制转化为十进制。将数字 5 转换为二进制,我们的计算步骤如下:5 / 2 = 2 … 12 / 2 = 1 … 0将上面第1步中的除于2移动到等号右边,得到: 5 = (2 * 2)+ 1以上式子(2 * 2)中,

2021-01-11 19:18:11 138

原创 Leetcode876. 链表的中间结点(C++思路与代码)

给定一个头结点为 head 的非空单链表,返回链表的中间结点。如果有两个中间结点,则返回第二个中间结点。思路:双指针,初始时两个指针均指向头指针。如果快指针为空或者快指针的next为空,那么此时慢指针即为答案,移动结束。每轮移动,快指针需要移动两次,慢指针需要移动一次。/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode

2021-01-11 17:17:02 131 1

原创 Leetcode237. 删除链表中的节点(C++思路与代码)

请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点。传入函数的唯一参数为 要被删除的节点 。现有一个链表 – head = [4,5,1,9],它可以表示为:输入:head = [4,5,1,9], node = 5输出:[4,1,9]解释:给定你链表中值为 5 的第二个节点,那么在调用了你的函数之后,该链表应变为 4 -> 1 -> 9.思路:最基本的操作。/** * Definition for singly-linked list. * struct ListNo

2021-01-11 17:13:53 95

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除