zoukankan      html  css  js  c++  java
  • 线性表【栈(Stack)后进先出】【 队列(Queue)先进先出】

    【栈(Stack)后进先出】【 队列(Queue)先进先出】

     

        线性表是最基本、最简单、也是最常用的一种数据结构。线性表中数据元素之间的关系是一对一的关系, 即除了第一个和最后一个数据元素之外,其它数据元素都是首尾相接的。线性表的逻辑结构简单, 便于实现和操作。因此,线性表这种数据结构在实际应用中是广泛采用的一种数据结构。

        栈(Stack)后进先出

            

     public static void QuueMain()
            {            
                //创建一个队列
                Queue myQ = new Queue();
                myQ.Enqueue("The");//入队
                myQ.Enqueue("quick");
                myQ.Enqueue("brown");
                myQ.Enqueue("fox");
                myQ.Enqueue(null);//添加null
                myQ.Enqueue("fox");//添加重复的元素
    
                // 打印队列的数量和值
                Console.WriteLine("myQ");
                Console.WriteLine("\tCount:    {0}", myQ.Count);
    
                // 打印队列中的所有值
                Console.Write("Queue values:");
                PrintValues(myQ);
    
                // 打印队列中的第一个元素,并移除
                Console.WriteLine("(Dequeue)\t{0}", myQ.Dequeue());
    
                // 打印队列中的所有值
                Console.Write("Queue values:");
                PrintValues(myQ);
    
                // 打印队列中的第一个元素,并移除
                Console.WriteLine("(Dequeue)\t{0}", myQ.Dequeue());
    
                // 打印队列中的所有值
                Console.Write("Queue values:");
                PrintValues(myQ);
    
                // 打印队列中的第一个元素
                Console.WriteLine("(Peek)   \t{0}", myQ.Peek());
    
                // 打印队列中的所有值
                Console.Write("Queue values:");
                PrintValues(myQ);
    
                Console.ReadLine();
            }
    
            public static void PrintValues(IEnumerable myCollection)
            {
                foreach (Object obj in myCollection)
                    Console.Write("    {0}", obj);
                Console.WriteLine();
            }
    

      

      队列(Queue)先进先出

    public static void StackMain()
            {
                Stack stack = new Stack();
                stack.Push("one");
                stack.Push("two");
                stack.Push("three");
                stack.Push("four");
                stack.Push("five");
    
                // 打印队列的数量和值
                Console.WriteLine("Stack");
                Console.WriteLine("\tCount:    {0}", stack.Count);
    
                // 打印队列中的所有值
                Console.Write("Stack values:");
                PrintValues(stack);
    
                // 打印队列中的顶部第一个元素,并移除
                Console.WriteLine("(Pop)\t{0}", stack.Pop());
    
                // 打印队列中的所有值
                Console.Write("Stack values:");
                PrintValues(stack);
    
                // 打印队列中的顶部第一个元素
                Console.WriteLine("(Peek)   \t{0}", stack.Peek());
    
                // 打印队列中的所有值
                Console.Write("stack values:");
                PrintValues(stack);
    
                Console.ReadLine();
            }
    
    
            public static void PrintValues(IEnumerable myCollection)
            {
                foreach (Object obj in myCollection)
                    Console.Write("    {0}", obj);
                Console.WriteLine();
            }
    

      

     

  • 相关阅读:
    NOIP2009 pj
    数星星(POJ2352 star)
    洛谷 p3372 模板-线段树 1
    Luogu P1198 [JSOI2008]最大数 线段树
    Bestcoder#92&HDU 6017 T3 Girl loves 233 DP
    NOIP2008pj & luoguP1058 立体图 模拟
    NOIP2003TG 加分二叉树 区间DP
    Redis Jedis lua脚本
    Mac Ideal 常用快捷键
    Mysql慢查询explain
  • 原文地址:https://www.cnblogs.com/xchit/p/LinearTable.html
Copyright © 2011-2022 走看看