• 字节跳动面试题,给你一个每一项都是数值混乱顺序的数组,只要里面正确顺序的值输出。如[5,1,3,6,2,7],只要[1,2,7]


            // 字节跳动面试题,给你一个每一项都是数值混乱顺序的数组,只要里面正确顺序的值输出,如[5,1,3,6,2,7],只要[1,2,7]
            let arr = [5,1,3,6,2,7] // 只要127,正确顺序
            // 思路,当前项后面没有比他更小的,而且已保存没有跟他重复的,就保存
            
            // 首先声明一个数组保存数据
            let list = [];
            // 再声明一个变量保存初始需要判断的项和初始下标
            let i = 0;
            let num = arr[i];
            // 写一个递归函数,处理每一次的内部循环
            function ArrList(arr,num,list,i){
                let flog = true;
                for(let j = i;j<arr.length;j++){
                    // 只要有比num小的,就终止
                    if(num>arr[j]){
                        flog = false
                    }
                }
                // 没有比他小的,并且查重就保存num
                if(flog&&!list.includes(num)){
                    list.push(num)
                }
            }
            // 然后开始初始数组的循环
            arr.forEach((item,index)=>{
                i = index;
                num = arr[i];
                ArrList(arr,num,list,i)
            })
            // 最后打印list
            console.log(list); // 1,2,7
  • 相关阅读:
    需要了解的项目
    vmware安装问题:Microsoft Runtime DLL安装程序未能完成安装
    rabbitmqctl 报错
    RabbitMQ快速入门python教程
    RabbitMQ消息队基本概念
    Windows RabbitMQ 添加用户、设置角色和权限 (包含无法添加的错误处理)
    转:Window10下RabbitMQ安装图文教程
    Windows下RabbitMQ安装及入门
    crontab 详细用法 定时任务
    转 RabbitMQ
  • 原文地址:https://www.cnblogs.com/supermanYU/p/15246411.html
Copyright © 2020-2023  润新知