数组
数组的专项练习
菜菜女孩要加油哦
这个作者很懒,什么都没留下…
展开
-
LeetCode136(力扣136):只出现一次的数字 (C++)
136.只出现一次的数字给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [2,2,1]输出: 1示例 2:输入: [4,1,2,1,2]输出: 4我的题解(错误错误错误)class Solution {public: int singleNumber(vector<int>& nums) { so原创 2020-12-16 01:42:33 · 337 阅读 · 0 评论 -
LeetCode541(力扣541):反转字符串Ⅱ(C++)
541.反转字符串Ⅱ给定一个字符串 s 和一个整数 k,你需要对从字符串开头算起的每隔 2k 个字符的前 k 个字符进行反转。如果剩余字符少于 k 个,则将剩余字符全部反转。如果剩余字符小于 2k 但大于或等于 k 个,则反转前 k 个字符,其余字符保持原样。示例:输入: s = "abcdefg", k = 2输出: "bacdfeg"提示:该字符串只包含小写英文字母。给定字符串的长度和 k 在 [1, 10000] 范围内。我的题解class Solution {publi原创 2020-12-15 13:52:54 · 343 阅读 · 0 评论 -
LeetCode334(力扣334):反转字符串(C++)
344 反转字符串编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。你可以假设数组中的所有字符都是 ASCII 码表中的可打印字符。示例 1:输入:["h","e","l","l","o"]输出:["o","l","l","e","h"]示例 2:输入:["H","a","n","n","a","h"]输出:["h","a","n","n","a","H原创 2020-12-15 13:23:37 · 193 阅读 · 0 评论 -
LeetCode283(力扣283):移动零 C语言(含测试代码)多种思路与详细解法
T283.移动零这里是引用难度:简单给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。示例: 输入: [0,1,0,3,12] 输出: [1,3,12,0,0]说明: 1. 必须在原数组上操作,不能拷贝额外的数组。 2. 尽量减少操作次数。我的提交代码void moveZeroes(int* nums, int numsSize){ int temp; for (int i = 0; i < numsSize -原创 2020-11-19 16:54:05 · 1439 阅读 · 0 评论 -
剑指offer 03:数组中重复的数字 C++(含测试代码)
剑指offer 03. 数组中重复的数字找出数组中重复的数字。在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。示例 1:输入:[2, 3, 1, 0, 2, 5, 3]输出:2 或 3 限制:2 <= n <= 100000我的提交代码class Solution {public: int findRepeatNumber(v原创 2020-12-05 11:44:56 · 169 阅读 · 0 评论 -
LeetCode88(力扣88):合并两个有序数组 C++(含有测试代码)多种思路与解法想详细
合并两个有序数组给你两个有序整数数组 nums1 和 nums2,请你将 nums2 合并到 nums1 中,使 nums1 成为一个有序数组。说明:初始化 nums1 和 nums2 的元素数量分别为 m 和 n 。你可以假设 nums1 有足够的空间(空间大小大于或等于 m + n)来保存 nums2 中的元素。示例:输入:nums1 = [1,2,3,0,0,0], m = 3nums2 = [2,5,6], n = 3输出:[1,2,2,3,5,6]提示:-10^原创 2020-12-05 02:50:20 · 548 阅读 · 0 评论 -
LeetCode485(力扣485)最大连续1的个数 C++ 使用C++11for
485 最大连续1的个数给定一个二进制数组, 计算其中最大连续1的个数。示例 1:输入: [1,1,0,1,1,1]输出: 3解释: 开头的两位和最后的三位都是连续1,所以最大连续1的个数是 3.注意:输入的数组只包含 0 和1。输入数组的长度是正整数,且不超过 10,000。我提交的代码class Solution {public: int findMaxConsecutiveOnes(vector<int>& nums) { int原创 2020-12-10 19:16:37 · 274 阅读 · 1 评论