小川丶 2021-03-21 16:19 采纳率: 0%
浏览 182

数据结构,求大佬!!!

有一个整数顺序表L,设计一个算法删除其中所有值为负整数的元素,删除后元素的相对次序不变,并给出算法的时间复杂度。

例:

L1=(1,2,-1,-2,3,-3),删除后L1=(1,2,3)

L2=(2,-1,-5,6,-7,4,-5,8),删除后L2=(2,6,4,8)

  • 写回答

2条回答 默认 最新

  • 阿哲.900 2021-03-21 18:19
    关注
    package com.itheima.azhe;
    
    import java.util.ArrayList;
    
    public class shanchufushu {
        public static void main(String[] args) {
           
            //比如
            ArrayList<Integer> arr = new ArrayList<>();
            arr.add(1);
            arr.add(2);
            arr.add(-1);
            arr.add(-2);
            arr.add(3 );
            arr.add(-3);
            System.out.println("删除前:"+arr);
            //创建一个del方法 删除负数
            ArrayList newarr = del(arr);
    
            System.out.println("删除后"+newarr);
        }
    
        private static ArrayList del(ArrayList<Integer> arr) {
    
            //遍历集合 拿到每一个元素
            for (int i = 0; i < arr.size(); i++) {
                //做一个判断 判断是否为负数 是负数就删除
                // arr[i]作为第几个索引  比如 0索引代表第一个元素 1
                if (arr.get(i) < 0) {
                    //当代码走到这行 说明是负数 然后删除元素 使用remove方法 里面传入的
                    //是几号索引
                    arr.remove(i);
                    //需要修改的地方 每次删除一个元素 那么在循环里面自减
                    i--;
                    //自减就会重新回到上一个索引 
                }
            }
            return arr;
        }
    }
    
    -------------------------------------------
    运行结果
    删除前:[1, 2, -1, -2, 3, -3]
    删除后[1, 2, 3]
    评论

报告相同问题?

悬赏问题

  • ¥15 Mac系统vs code使用phpstudy如何配置debug来调试php
  • ¥15 目前主流的音乐软件,像网易云音乐,QQ音乐他们的前端和后台部分是用的什么技术实现的?求解!
  • ¥60 pb数据库修改与连接
  • ¥15 spss统计中二分类变量和有序变量的相关性分析可以用kendall相关分析吗?
  • ¥15 拟通过pc下指令到安卓系统,如果追求响应速度,尽可能无延迟,是不是用安卓模拟器会优于实体的安卓手机?如果是,可以快多少毫秒?
  • ¥20 神经网络Sequential name=sequential, built=False
  • ¥16 Qphython 用xlrd读取excel报错
  • ¥15 单片机学习顺序问题!!
  • ¥15 ikuai客户端多拨vpn,重启总是有个别重拨不上
  • ¥20 关于#anlogic#sdram#的问题,如何解决?(关键词-performance)