`
economist
  • 浏览: 5909 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Remove Element

阅读更多

 

问题描述:

Given an array and a value, remove all instances of that value in place and return the new length.

Do not allocate extra space for another array, you must do this in place with constant memory.

The order of elements can be changed. It doesn't matter what you leave beyond the new length.

Example:
Given input array nums = [3,2,2,3]val = 3

Your function should return length = 2, with the first two elements of nums being 2.

 

解答:

package array;

import java.util.Arrays;

public class RemoveValueDemo {
    public static void main(String[] args) {
        int[] nums1 = {1, 1, 2, 2, 3};
        int length = removeValue(nums1, 1);
        print(length);

        int[] nums2 = new int[length];
        System.arraycopy(nums1, 0, nums2, 0, length);
        print(Arrays.toString(nums2));
    }

    public static int removeValue(int[] nums, int val) {
        if(nums == null || nums.length == 0) {
            return 0;
        }
        int idx = 0;
        for(int num: nums) {
            if(num != val) {
                nums[idx++] = num;
            }
        }
        return idx;
    }

    public static void print(Object obj) {
        System.out.println(obj);
    }
}

 

def remove_val(nums, val):
    if not nums:
        return 0
    idx = 0
    for num in nums:
        if num != val:
            nums[idx] = num
            idx += 1
    return idx

nums = [1, 1, 2, 2, 3, 4, 5, 5]
l = remove_val(nums, 3)
print l, nums[:l]

 

分享到:
评论

相关推荐

    RemoveElement算法Demo

    《RemoveElement算法详解及其在Java中的实现》 在编程领域,算法是解决问题的关键工具,它是一种有序的操作步骤,用于处理数据或控制计算流程。本文将深入探讨一个名为"RemoveElement"的算法,并通过一个名为...

    Click to Remove Element-crx插件

    语言:English 只需单击即可删除烦人的元素 允许您从网站中删除任何元素。 暂时或永久。 它是广告拦截器,固定菜单,分散GIF图片,动画幻灯片过多或妨碍您的东西而错过的广告。 :dashing_away:功能:-轻松连续删除多...

    Remove Element From Dom-crx插件

    "Remove Element From Dom-crx" 是一款针对网页开发和测试的专业Chrome浏览器插件,主要功能是帮助用户方便快捷地从当前网页的DOM(Document Object Model)中移除指定的HTML元素。这款插件特别适用于开发者在调试...

    RemoveElement-crx插件

    语言:English 从右键单击上下文菜单中删除HTML元素 无需打开开发人员工具即可更轻松地删除元素。 右键单击要删除HTML元素。 您可以在上下文菜单中查看标签名称和大小。 您所要做的就是单击它。

    C++第一次大作业

    R2.10) NextElement()和 RemoveElement() 应该通过引用返回 对于现在我们将去建立sets去只保存Person对象,因此类名是PersonSet. //file PersonSet.h class PersonSet { public: //default constructor ...

    Simple Remove Element-crx插件

    此扩展为: 开源 安全的 高效的 可疑的 尽可能简单 设计具有最小权限(仍需要访问活动选项卡) 如果遇到任何问题,请在GitHub页面中提交问题:https://github.com/elfakyn/simple-remove-eLement

    Remove Element-crx插件

    语言:English (United States) 从上下文菜单中删除HTML元素(单击鼠标右键)。 移除元素可让您移除所有HTML元素,方法是右键单击元素,... 可从https://github.com/atheiman/remove-element获得极其简单和高效的代码

    删除元素「Remove Element」-crx插件

    从上下文菜单中删除一个HTML元素(右键单击)。 删除元素允许您通过右键单击元素并从Chrome上下文菜单中... https://github.com/atheiman/remove-element提供了非常简单高效的代码 支持语言:English (United States)

    mm.rar_html 5动态添加删除

    button.addEventListener('click', removeElement); // ... function removeElement() { // 删除元素的逻辑 } // 当不再需要监听点击事件时,可以移除它 button.removeEventListener('click', removeElement)...

    remove-element:添加上下文菜单(右键单击)工具以删除单击的 HTML 元素的 Chrome 扩展程序

    总结来说,"remove-element" 是一个基于 JavaScript 开发的 Chrome 扩展,它利用了 DOM 操作、事件监听、Chrome 的上下文菜单 API 等技术,为用户提供了一个方便的工具,可以按需删除网页上的任意 HTML 元素。

    c++-c++编程基础之leetcode题解第27题移除元素.zip

    3. 引用参数:在`removeElement`函数中,`nums`是以引用传递的,这意味着函数可以直接修改原数组,而不需要复制整个数组。 4. 非递归解法:本题的解法是线性的,没有使用递归,因此具有较低的时间复杂度O(n),其中n...

    使用Vector对象处理一组数(java)

    `Vector`提供了`removeElement()`方法来删除指定的对象。以下是删除这两个值的代码: ```java numbers.removeElement(maxValue); numbers.removeElement(minValue); ``` 最后,我们要将最大值、最小值和剩余的整数...

    Unity3D教程:动态添加删除iGUI的控件2

    请注意,`removeElement`接收的是变量`chun`,而不是`chun.name`,因为引用的对象是控件实例,而非其名称。 在上述代码中,我们创建了两个GUI按钮,一个用于添加进度条控件,另一个用于移除它。当点击“add”按钮...

    从Dom删除元素「Remove Element From Dom」-crx插件

    可以轻松地从当前页面的DOM中删除元素,包括标记、id和类。 只需输入要删除的所选元素,金额并观看该元素神奇地删除即可! 快速查看在删除某些内容后页面的外观。 支持语言:English (UK)

    XML操作类封装

    例如,`AddElement`用于添加新元素,`RemoveElement`删除指定元素,`FindElement`按名称查找元素。 ```cpp class XMLElement { public: XMLElement(TiXmlElement* elem); void AddElement(const std::string& ...

    异星工厂:昂贵的科研传送带1

    - `int removeElement()`:移除并返回传送带头部的元素,如果传送带为空,则返回一个特殊值表示失败。 ```c class ConveyorBelt { public: std::deque<Element> elements; int capacity; ConveyorBelt(int n) ...

    php-leetcode题解之移除元素.zip

    function removeElement($nums, $val) { $i = 0; for ($j = 0; $j ($nums); $j++) { if ($nums[$j] != $val) { $nums[$i++] = $nums[$j]; } } return $i; } ``` 2. **逆向遍历法**:从数组尾部开始向前遍历...

    c语言-leetcode 0027-remove-element.zip

    c c语言_leetcode 0027_remove_element.zip

Global site tag (gtag.js) - Google Analytics