zoukankan      html  css  js  c++  java
  • 在数组中删除一个元素之经典解决

    数组:可以理解为一个容器,并且的长度是固定的,如果你想删除一个元素:

    1.可以将其要删除的元素置为null,然后遍历这个数组的时候,需要将数组中出现null的过滤掉

    2.可以让被删除的元素的后面的元素,集体的想左移动,然后减小数组的长度。

    3.可以最后一个元素代替你要替换的元素,然后减少数组的长度,我个人认为这一种方法稍微简单点:直接上代码

     1 /**
     2  * 从数组中删除一个元素 思想:由于删除后的元素的顺序是不确定的,所以可以最后一个   元素替代你要删除的内容
     3  * 当然也可以用第一个元素去替换你要替换删除的元素
     4  * @author dhb
     5  *
     6  */
     7 public class DeleteElement {
     8 
     9     public static void main(String[] args) {
    10         int[] arr = { 1, 3, 4, 2, 5 };
    11         //遍历数组:
    12        System.out.println(Arrays.toString(deleElement(arr)));
    13     }
    14     
    15     
    16     /**
    17      * 删除元素
    18      * @return
    19      */
    20     public static int[] deleElement(int[] arr) {
    21         Scanner s = new Scanner(System.in);
    22         System.out.println("请录入您要删除第几个元素");
    23         int num = s.nextInt();// 获取录入的数字
    24         if(num < arr.length) {
    25             arr[num - 1] = arr[arr.length - 1];//将最后一个元素填充到你要修改的元素的位置
    26             //缩小数组的容器
    27             int[] newArray = Arrays.copyOf(arr, arr.length - 1);
    28             return newArray;
    29         }
    30         System.out.println("索引越界");
    31         return null;
    32     }
    33     
    34 
    35 }

    注意:该要求不需要排序。

  • 相关阅读:
    【用例篇】Xmind转为csv 导入禅道
    idea替换当前文件内容
    配置IDEA项目JDK环境
    git 只提交部分修改文件
    `总结TESTNG与JUNIT的异同
    POST请求BODY格式区别
    【转】使用AllureReport生成测试报告
    Springboot+Redis 配置和使用
    【转】git branch 命令查看分支、删除远程分支、本地分支
    [转]Json字符串和map和HashMap之间的转换
  • 原文地址:https://www.cnblogs.com/donghaibin/p/9078866.html
Copyright © 2011-2022 走看看