当前位置: 首页>>代码示例>>C#>>正文


C# LinkedList.AddBefore方法代码示例

本文整理汇总了C#中LinkedList.AddBefore方法的典型用法代码示例。如果您正苦于以下问题:C# LinkedList.AddBefore方法的具体用法?C# LinkedList.AddBefore怎么用?C# LinkedList.AddBefore使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在LinkedList的用法示例。


在下文中一共展示了LinkedList.AddBefore方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: FN

        public static void FN(string cmd, string p1, LinkedList<ActionNode> lNode, LinkedListNode<ActionNode> before)
        {
            DirectFunctionCallNode dfn = new DirectFunctionCallNode();
            dfn.Parameters = new List<string>() { BaseCompiled.SET_GET_FROM_RTV, p1 };
            lNode.AddBefore(before, dfn);

            FunctionCallNode fn = new FunctionCallNode();
            fn.Parameters = new List<string>() { cmd, p1 };
            lNode.AddBefore(before, fn);
        }
开发者ID:ninox92,项目名称:DP2-Compiler,代码行数:10,代码来源:CompilerVMCaller.cs

示例2: Main

        public static void Main(string[] args)
        {
            LinkedList<string> list =
            new LinkedList<string>();
            list.AddFirst("1");
            list.AddLast("5");
            list.AddAfter(list.First, "2");
            list.AddBefore(list.Last, "3");
            list.AddBefore(list.Last, "4");
            list.Remove(list.First.NextItem);

            PrintList(list);
        }
开发者ID:kalinnikol,项目名称:TelerikAcademy-1,代码行数:13,代码来源:LinkedListDemo.cs

示例3: VAR

 public static void VAR(Token next, LinkedList<ActionNode> lNode, LinkedListNode<ActionNode> before)
 {
     if (next.Type == TokenType.NUMBER)
     {
         DirectFunctionCallNode dfn = new DirectFunctionCallNode();
         dfn.Parameters = new List<string>() { BaseCompiled.SET_CONST_TO_RTV, next.Text };
         lNode.AddBefore(before, dfn);
     }
     else
     {
         DirectFunctionCallNode dfnx = new DirectFunctionCallNode();
         dfnx.Parameters = new List<string>() { BaseCompiled.SET_ID_TO_RTV, next.Text };//Set the variable name
         lNode.AddBefore(before, dfnx);
     }
 }
开发者ID:ninox92,项目名称:DP2-Compiler,代码行数:15,代码来源:CompilerVMCaller.cs

示例4: Main

        static void Main(string[] args)
        {
            //creates a linked list
            LinkedList<string> linked1 = new LinkedList<string>();

            //appending three elements to the list
            linked1.AddLast("One");
            linked1.AddLast("Two");
            linked1.AddLast("Three");
            linked1.AddFirst("Zero");
            PrintLinked1(linked1);

            Console.WriteLine();
            //insterting a node between element "Two" and "Three"
            LinkedListNode<string> myNode = linked1.Find("Three");
            linked1.AddBefore(myNode, "Inserted using add before.");
            PrintLinked1(linked1);

            //removing one element
            linked1.Remove("One");
            PrintLinked1(linked1);

            //remove Three using myNode
            myNode = linked1.Find("Three");
            linked1.Remove(myNode);
            PrintLinked1(linked1);
        }
开发者ID:lester88a,项目名称:COMP212-Programming3--WK5-GenericLinkedList,代码行数:27,代码来源:Program.cs

示例5: Main

        static void Main(string[] args)
        {
            LinkedList<string> sporcular = new LinkedList<string>();
            sporcular.AddLast("A");
            sporcular.AddLast("B");
            sporcular.AddLast("C");
            sporcular.AddLast("D");
            sporcular.AddLast("E");
            sporcular.AddLast("F");
            sporcular.AddLast("G");
            sporcular.AddLast("H");

            sporcular.Remove("H");
            sporcular.AddFirst("H");

            sporcular.Remove("E");
            sporcular.AddFirst("E");

            sporcular.AddAfter(sporcular.First, "X");

            LinkedListNode<string> c =
                sporcular.Find("C");

            sporcular.AddBefore(c, "Y");

            foreach (string item in sporcular)
            {
                Console.WriteLine(item);
            }
        }
开发者ID:alperkonuralp,项目名称:CSharpOrnekleri,代码行数:30,代码来源:Program.cs

示例6: addFromLast

        private void addFromLast(_DropdownlistLinkedModel model, LinkedList<_DropdownlistLinkedNodeModel> linkedList, int projectId)
        {
            _DropdownlistLinkedNodeModel first = null;
            if (linkedList.Last == null)
            {
                first = new _DropdownlistLinkedNodeModel();
                linkedList.AddLast(first);
            }
            else
            {
                first = linkedList.First.Value;
            }

            first.CurrentProject = getProjectById(projectId);

            _DropdownlistLinkedNodeModel pre = getParent(projectId);
            if (pre != null)
            {
                linkedList.AddBefore(linkedList.First, pre);
                first.Projects = getFromParent(pre.CurrentProject.Id);

                addFromLast(model, linkedList, pre.CurrentProject.Id);
            }
            else
            {
                model.TailSelectedProject = getParentGroup(projectId);
                first.Projects = getFromGroup(model.TailSelectedProject.Id);
            }

        }
开发者ID:feilang864,项目名称:task.zyfei.net,代码行数:30,代码来源:ProjectService.cs

示例7: Read

        public override Tree<SyntaxToken> Read(LinkedList<MixedToken> tokens, Grammar grammar)
        {
            // Do not create negate syntax token if we are able to create a subtract syntax token
            var lastNegateNode = tokens.FindLastNode(t => t.Value.IsLexicToken &&
                t.Value.LexicToken is SubtractToken && (t.Previous != null && !t.Previous.Value.IsTree || t.Previous == null));
            if (lastNegateNode != null) {
                var next = lastNegateNode.Next;
                if (next == null)
                    throw new ParserException("Unexpected argument of 'negate' operator.");

                if (!next.Value.IsTree)
                    throw new ParserException("Argument of 'negate' operator was not parsed.");

                NegateSyntaxToken token = new NegateSyntaxToken();
                Tree<SyntaxToken> tree = new Tree<SyntaxToken>(token);
                tree.Leafs.Add(next.Value.Tree);

                tokens.AddBefore(lastNegateNode, new MixedToken(tree));
                tokens.Remove(lastNegateNode);
                tokens.Remove(next);

                return tree;
            }

            return null;
        }
开发者ID:bashis,项目名称:MyGraphic,代码行数:26,代码来源:NegateSyntaxTokenReader.cs

示例8: GetTypesOrderedByGeneration

        private static IEnumerable<Type> GetTypesOrderedByGeneration(Type[] sourceTypes)
        {
            var queue = new Queue<Type>(sourceTypes);
            var sortedList = new LinkedList<Type>();

            while (queue.Count > 0)
            {
                var currentType = queue.Dequeue();

                // Search through the list and make sure this type is added before any type deriving from it.
                var node = sortedList.First;
                while (true)
                {
                    if (node == null)
                    {
                        sortedList.AddLast(currentType);
                        break;
                    }
                    if (currentType.IsAssignableFrom(node.Value))
                    {
                        sortedList.AddBefore(node, currentType);
                        break;
                    }
                    node = node.Next;
                }
            }
            return sortedList;
        }
开发者ID:austusross,项目名称:SpaceEngineers,代码行数:28,代码来源:IlInjector.cs

示例9: Main

        static void Main(string[] args)
        {
            Stack<int> s = new Stack<int>();
            Queue<int> q = new Queue<int>();

            for (int i = 0; i < 10; ++i)
            {
                s.Push(i);
                q.Enqueue(i);
            }

            while (s.Count > 0)
                Console.WriteLine(s.Pop()); //Writes them out in reverse order (9-0). 'Cause FILO

            while (q.Count > 0)
                Console.WriteLine(q.Dequeue()); //Writes them in order (FIFO).
            //New list
            LinkedList<Student> TwoKay = new LinkedList<Student>();
            //New node with a new student
            LinkedListNode<Student> Current = new LinkedListNode<Student>(new Student("AJ", 123432)); 
            //Take that node and add it to my list.
            TwoKay.AddFirst(Current);
            //Add a student without creating a node first
            TwoKay.AddBefore(TwoKay.First, new Student("Caleb", 123456));
            //Show it
            PrintList(TwoKay);
            //Change AJ
            TwoKay.First.Next.Value = new Student("AJ the Mighty", 333);
            //Print the list again
            PrintList(TwoKay);
            //Now, note that the value of current changed, too, because reference.
            Console.WriteLine(Current.Value);
        }
开发者ID:Hailieu,项目名称:CMPE1700.Public,代码行数:33,代码来源:Program.cs

示例10: SwapBlocks

		public void SwapBlocks(LinkedList<Block> leftBlockList, Block leftBlock, LinkedList<Block> rightBlockList, Block rightBlock)
		{
			leftBlockList.AddBefore(leftBlockList.Find(leftBlock), rightBlock);
			leftBlockList.Remove(leftBlockList.Find(leftBlock));

			rightBlockList.AddBefore(rightBlockList.Find(rightBlock), leftBlock);
			rightBlockList.Remove(rightBlock);
		}
开发者ID:Hitchhikrr,项目名称:tetris-attack,代码行数:8,代码来源:Cursor.cs

示例11: ordenar

        public override LinkedList<int> ordenar(List<int> lista)
        {
            LinkedList<int> ordenada = new LinkedList<int>();
            if (null == lista || lista.Count == 0)
                return null;
            if (ordenada.Count == 0)
                ordenada.AddFirst(lista[0]);
            for (int i = 1; i < lista.Count; i++)
            {
                if (lista[i] < ordenada.First.Value)
                {
                    ordenada.AddFirst(lista[i]);
                }
                else
                {
                    LinkedListNode<int> node = ordenada.First;
                    while (null != node)
                    {
                        if (null != node.Next)
                        {
                            if (lista[i] > node.Value)
                            {
                                node = node.Next;
                            }
                            else
                            {
                                ordenada.AddBefore(node, lista[i]);
                                break;
                            }
                        }
                        else
                        {
                            if (lista[i] > node.Value)
                                ordenada.AddAfter(node, lista[i]);
                            else
                                ordenada.AddBefore(node, lista[i]);
                            break;
                        }

                    }
                }

            }

            return ordenada;
        }
开发者ID:dieguito12,项目名称:Respuestas-Entrevistas-GBH,代码行数:46,代码来源:OrdenadorAscendente.cs

示例12: add_item_before_tail_to_an_empty_list_should_become_head_and_tail

        public void add_item_before_tail_to_an_empty_list_should_become_head_and_tail()
        {
            var list = new LinkedList<int>();
            var one = 1;

            list.AddBefore(list.Head, one);

            Assert.AreEqual(one, list.Head.Value);
            Assert.AreEqual(one, list.Tail.Value);
        }
开发者ID:hetalsureshpatel,项目名称:Katas,代码行数:10,代码来源:LinkedListTests.cs

示例13: Main

    static void Main()
    {
        LinkedList<string> list = new LinkedList<string>();
        list.AddFirst("First");
        list.AddLast("Last");
        list.AddAfter(list.First, "After First");
        list.AddBefore(list.Last, "Before Last");

        Console.WriteLine(String.Join(", ", list));
        // Result: First, After First, Before Last, Last
    }
开发者ID:stoyanovalexander,项目名称:TheRepositoryOfAlexanderStoyanov,代码行数:11,代码来源:LinkedListExample.cs

示例14: Main

        static void Main()
        {
            LinkedList<int> linkedList = new LinkedList<int>();
            linkedList.AddFirst(5);
            linkedList.AddLast(100);
            linkedList.AddAfter(linkedList.FirstElement.NextItem, 1000);
            linkedList.AddBefore(linkedList.FirstElement.NextItem, 999);
            linkedList.AddBefore(linkedList.FirstElement, 0);
            linkedList.RemoveFirst();
            linkedList.RemoveLast();

            ListItem<int> next = linkedList.FirstElement;
            while (next != null)
            {
                Console.WriteLine(next.Value);
                next = next.NextItem;
            }

            Console.WriteLine(linkedList.Count);
        }
开发者ID:Nottyy,项目名称:TelerikAcademy,代码行数:20,代码来源:LinkedListTest.cs

示例15: Main

    static void Main()
    {
        Console.WriteLine("Dot Net LinkedList");
        LinkedList<int> dotNetList = new LinkedList<int>();
        dotNetList.AddFirst(3);
        dotNetList.AddFirst(1);
        dotNetList.AddBefore(dotNetList.Last, 2);
        dotNetList.AddBefore(dotNetList.First, 4);
        dotNetList.AddAfter(dotNetList.Last, 5);
        dotNetList.AddAfter(dotNetList.First, 6);
        dotNetList.AddLast(7);
        dotNetList.AddLast(8);
        dotNetList.RemoveFirst();
        dotNetList.RemoveLast();

        foreach (var item in dotNetList)
        {
            Console.WriteLine(item);
        }
        Console.WriteLine("Dot Net LinkedList.Count = {0}", dotNetList.Count);

        Console.WriteLine();
        Console.WriteLine("My LinkedList<T>");
        MyLinkedList<int> myList = new MyLinkedList<int>();
        myList.AddFirst(3);
        myList.AddFirst(1);
        myList.AddBefore(myList.Last, 2);
        myList.AddBefore(myList.First, 4);
        myList.AddAfter(myList.Last, 5);
        myList.AddAfter(myList.First, 6);
        myList.AddLast(7);
        myList.AddLast(8);
        myList.RemoveFirst();
        myList.RemoveLast();

        foreach (var number in myList)
        {
            Console.WriteLine(number);
        }
        Console.WriteLine("MyList.Count = {0}", myList.Count);
    }
开发者ID:KirilToshev,项目名称:Projects,代码行数:41,代码来源:LinkedListImplement.cs


注:本文中的LinkedList.AddBefore方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。