3.7 KiB
3.7 KiB
title | localeTitle |
---|---|
Stand in Line | 站在队中 |
如果卡住,请记得使用**Read-Search-Ask
** 。尝试配对程序并编写自己的代码
问题说明:
在计算机科学中, _队列_是一种抽象的数据结构 ,其中项目按顺序保存。可以在队列的后面添加新项目,并从队列的前面取出旧项目。
编写一个函数nextInLine
,它接受一个数组( arr )和一个数字( item )作为参数。将数字添加到数组的末尾,然后删除数组的第一个元素。然后, nextInLine
函数应返回已删除的元素。
- 更改下面的代码
//Your Code here
,最多//Change this line
。 - 确保您正在编辑
nextInLine
函数的内部。 - 使用您学习的数组函数将项目添加到数组arr的末尾。
- 使用您学习的数组函数从数组arr中删除第一个元素。
- 返回删除的元素。
相关链接
提示:1
push()
方法将一个项添加到数组的末尾。
现在尝试解决问题
提示:2
shift()
方法删除数组的第一个元素。它还返回删除的元素。
现在尝试解决问题
提示:3
函数nextInLine
使用arr和item 。这些是测试将用于传递他们将测试的数组元素的内容。它允许该功能可重复使用。不要硬编码函数内的任何测试。
现在尝试解决问题
扰流警报!
提前解决!
基本代码解决方案
function nextInLine(arr, item) {
// Your code here
arr.push(item);
var removed = arr.shift();
return removed; // Change this line
}
代码说明:
- 在arr的末尾按下项目 。
- 在arr上调用
shift()
方法以获取第一个项目并将其存储在已删除的项目中。 - 返回删除 。
示例运行
- 测试
nextInLine([2,1]);
运行。 - 调用
nextInLine
函数。 arr成为[2]。 项目变为1。 arr.push(item);
按1到[2]。所以arr现在是[2,1]。var removed = arr.shift();
删除第一个元素。所以arr现在是[1]。 2已被删除并存储在已删除 。return removed;
返回2。
注意 :您实际上并不需要删除变量。删除的元素可以使用return arr.shift();
直接return arr.shift();
。