我想了两个方法。 第一个 是使用一个指针,因为是有序的,只需要从头移动到尾部,如果发现下一个元素与当前元素相等,则移动当前元素之后的元素,把相同的元素覆盖掉。 大致的步骤如下 第二个 是使用两个指针,一个快(j)一个慢(i),如果i j 所指向的元素不相等,则i j 同时加 ...
...
2018-05-14 13:47 0 1351 推荐指数:
我想了两个方法。 第一个 是使用一个指针,因为是有序的,只需要从头移动到尾部,如果发现下一个元素与当前元素相等,则移动当前元素之后的元素,把相同的元素覆盖掉。 大致的步骤如下 第二个 是使用两个指针,一个快(j)一个慢(i),如果i j 所指向的元素不相等,则i j 同时加 ...
题目: 反转字符串: 编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。 不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。 你可以假设数组中的所有字符都是 ASCII 码表中的可打印字符。 示例 ...
给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。 示例 1: 给定数组 nums = [1,1,2], 函数应该返回 ...
题目: 给定一个 m x n 的矩阵,如果一个元素为 0,则将其所在行和列的所有元素都设为 0。请使用原地算法。 思路: 进阶: 一个直接的解决方案是使用 O(mn) 的额外空间,但这并不是一个好的解决方案。一个简单的改进方案是使用 O(m + n) 的额外空间 ...
/** * @brief 给定一个数组nums,将所有的0移动到数组的末尾,同时保留非0元素的相对顺序; * @param nums */ void moveZeros(vector<int>& nums){ int i = 0,poz ...
JavaScript使用pop方法移除数组最后一个元素 则最后一个{title: '操作', align: 'right', toolbar: '#optBarCoordination', minWidth:30}被删除掉 ...
class Solution { public: vector twoSum(vector & nums, int target) { vector temp; for(int i=0;i<nums.size();i++ ...