
leetcode
终不免俗
这个作者很懒,什么都没留下…
展开
-
寻找俩个在一个所有元素都出现俩次的数组中只出现了一次的数
题目描述:给定一个整数数组 nums,其中恰好有两个元素只出现一次,其余所有元素均出现两次。 找出只出现一次的那两个元素。注意:1.这俩个数字的输出顺序不重要;2.算法要具有线性时间复杂度(O(n)),常数空间复杂度。代码如下:class Solution {public: vector<int> singleNumber(vector<int>& nums){ //拿到这俩个数异或的结果 int val=0;原创 2020-10-30 16:09:51 · 244 阅读 · 0 评论 -
在一个所有元素都出现三次的数组中找出一个只出现了一次的元素
题目描述:给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现了三次。找出那个只出现了一次的元素。注意:算法具有线性时间复杂度(O(n))。 不能使用额外空间来实现。代码如下:class Solution {public: int singleNumber(vector<int>& nums){ //统计出数组中所有元素相同二进制位处1的个数 int countbit[32]={0}; for(auto e: nums)原创 2020-10-30 15:57:47 · 605 阅读 · 0 评论 -
删除一个排序数组中的重复项
题目来源于lettcode中的26题,以下为题目说明:给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。注意: 不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。代码实现如下:int removeDuplicates(int* nums, int numsSize){ if (numsSize == 0) return 0; int i = 0; int j = 1; //遍历一遍数组 whi原创 2020-10-30 15:45:32 · 152 阅读 · 0 评论 -
将一句话的单词进行倒置 C语言实现
题目描述:将一句话的单词进行倒置,标点不倒置。输入描述:每次测试会输入1个测试用例, 输入用例的长度不超过100输出描述:依次输出倒置之后的字符串,以空格分割eg:输入:i like beijing输出:beijing. like i解题思路:将整句话先逆置一遍,然后在逐个单词进行逆置。...原创 2019-11-09 20:22:14 · 2464 阅读 · 3 评论