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))
  • 相关阅读:
    LeetCode算法题-Factorial Trailing Zeroes(Java实现)
    LeetCode算法题-Excel Sheet Column Number(Java实现)
    FluentData 学习 第一弹
    加油 加油
    FluentData -Micro ORM with a fluent API that makes it simple to query a database
    RX
    创业哲学
    9种新思想
    事件总线 EventBus
    关于 C#和.net 的 发展
  • 原文地址:https://www.cnblogs.com/yang-xiao-fan/p/7355990.html
Copyright © 2011-2022 走看看