zoukankan      html  css  js  c++  java
  • 队列

    队列的概念
    • 是一种特殊的线性结构,他只允许在队列的首部进行删除操作,称为“出队”
    • 在队列的尾部进行增加操作,叫做“入队”;
    • 当队列中没有元素是(head==tail),称为空队列

    队列的原则

    • 先进先出,类似于买票的方式;
    队列的三个基本元素
    • 一个数组,两个变量

    问题描述
    • 将9个数字排序,每次都是删除第一个数字,然后将第二个数字放在数组的最后一位,一次类推,直到剩下最后一个数字,将最后一个数字也删除
    解决思路
    • 因为我们不知道要循环多少次,所以用while,循环的条件是当arr.length!==1的时候,我们就一直执行循环体中的内容,在循环体中,我们先把arr中的第一个数字删掉,然后让此时arr中最后一位等于的第一个数字,并删除第一位,然后拼接好删除的数字,当arr.length==1的时候,删除数字屏获取到,吧所有的删除掉的数字拼接起来就得到了最终的答案。
    • var arr=[6,3,1,7,5,8,9,2,4];
          var str='';
          function sort(arr) {
              while(arr.length!==1) {//当队列不为空的时候进行下面的操作
                  var str1=arr.splice(0,1);
                  arr[arr.length]=arr[0];
                  arr.splice(0,1);
                  str+=str1;
              }
              if(arr.length==1){
                  var str2=arr.splice(0,1);
                  str+=str2;
              }
              return str;
          }
          console.log(sort(arr))
  • 相关阅读:
    第二阶段个人冲刺总结01
    软件工程学习进度表13
    软件工程学习进度表12
    个人博客(09)
    个人博客(07)
    个人博客(08)
    poj1562 DFS入门
    poj3278 BFS入门
    数组单步运算
    十天冲刺
  • 原文地址:https://www.cnblogs.com/yang-xiao-fan/p/7355990.html
Copyright © 2011-2022 走看看