- 博客(77)
- 收藏
- 关注
原创 输入一个正整数n,去掉其中任意s个数字后,剩下的数字按原左右次序将组成一个新的正整数。寻找一种方案,使得剩下的数字组成的新数最小
输入一个正整数n,去掉其中任意s个数字后,剩下的数字按原左右次序将组成一个新的正整数。寻找一种方案,使得剩下的数字组成的新数最小样例输入 n=178543 s=4样例输出 13。
2022-12-28 16:34:07
1587
原创 LeetCode第284场周赛
2022.3.13LeetCode第284场周赛2200. 找出数组中的所有 K 近邻下标思路二分:找出nums中所有值为key的下标,对于每个元素,寻找前后两个最近的下标,若其中一个小于等于k,则该元素满足条件代码class Solution {public: vector<int> findKDistantIndices(vector<int>& nums, int key, int k) { int n = nums.size();
2022-03-15 11:22:25
1629
1
原创 二叉树的遍历迭代实现(c++)
思路使用栈模拟递归前序遍历题目链接:二叉树的前序遍历顺序:中-左-右栈具有先进后出的特点,应该先将根节点加入栈,再依次加入右节点和左节点,这样出栈的顺序就是先左节点后右节点了代码vector<int> preorderTraversal(TreeNode* root) { vector<int> ans; stack<TreeNode*> stk; stk.push(root); while (stk.size()) {
2022-03-12 14:06:49
1724
原创 LeetCode第272场周赛
2021.12.19LeetCode第272场周赛2108. 找出数组中的第一个回文字符串思路逐个判断是否为回文串判断时将两个指针放在头尾 逐一匹配代码class Solution {public: string firstPalindrome(vector<string>& words) { for (string s : words) { int i = 0, j = s.size() - 1; b
2021-12-23 14:09:14
621
原创 LeetCode2104.数组范围和(C++)
给你一个整数数组 nums 。nums 中,子数组的 范围 是子数组中最大元素和最小元素的差值。返回 nums 中 所有 子数组范围的 和 。子数组是数组中一个连续 非空 的元素序列。示例 1:输入:nums = [1,2,3]输出:4解释:nums 的 6 个子数组如下所示:[1],范围 = 最大 - 最小 = 1 - 1 = 0[2],范围 = 2 - 2 = 0[3],范围 = 3 - 3 = 0[1,2],范围 = 2 - 1 = 1[2,3],范围 = 3 - 2 = 1.
2021-12-13 20:22:26
1156
原创 LeetCode第271场周赛题解
2021.12.12LeetCode第271场周赛2103. 环和杆思路使用位运算记录状态每个int的三位表示三种颜色 包含三种颜色的值为7代码class Solution {public: int countPoints(string rings) { vector<int> state(10); unordered_map<char, int> mp = {{'R', 1}, {'G', 2}, {'B', 4}};
2021-12-13 12:16:17
451
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人