一、C# 中的栈队列用法
C#: queue.Dequeue() 从队列中删除第一个元素并返回它
js: array.shift(); 从数组中删除第一个元素并返回它
1 static void Main(string[] args) 2 { 3 // 队列 4 // 先进后出 5 Queue<int> queue = new Queue<int>(); 6 Console.Write($"加入队列:"); 7 for (int i = 0; i < 10; i++) 8 { 9 Console.Write($" {i} "); 10 queue.Enqueue(i); // 在队里结尾加上一个元素 11 } 12 Console.WriteLine(); 13 Console.Write("队列输出:"); 14 while (queue.Count > 0) 15 { 16 Console.Write($" {queue.Dequeue()} ");// 取出队里第一个元素并从队里中删除它 17 18 } 19 20 // 栈 21 // 先进先出 22 Stack<int> stack = new Stack<int>(); 23 Console.WriteLine(); 24 Console.WriteLine(); 25 Console.Write($"入栈:"); 26 for (int i = 0; i < 10; i++) 27 { 28 Console.Write($" {i} "); 29 stack.Push(i); 30 } 31 Console.WriteLine(); 32 Console.Write("出栈:"); 33 while (stack.Count > 0) 34 { 35 Console.Write($" {stack.Pop()} "); 36 } 37 }
二、js 中的 栈队列
在js中栈队列都是用数组来实现的
shift()方法:移除数组中的第一项并返回该项
push()方法:从数组末端添加项
若是想实现相反的操作的话,可以使用
unshift()方法:在数组的前端添加项
pop()方法:从数组末端移除项
如:
1 var list=[]; 2 // 以栈模式使用 list 3 list = innitList(); 4 showList(list); 5 function innitList() 6 { 7 for(var i=0;i<10;i++) 8 { 9 list.push(i); 10 } 11 return list; 12 } 13 function showList(list) 14 { 15 document.write(list.shift() + "<br />"); 16 if(list.length > 0) 17 showList(list); 18 19 }
来源:https://www.cnblogs.com/kmdatong/p/11325964.html