• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

C# SinglyLinkedLists.SinglyLinkedListNode类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了C#中SinglyLinkedLists.SinglyLinkedListNode的典型用法代码示例。如果您正苦于以下问题:C# SinglyLinkedListNode类的具体用法?C# SinglyLinkedListNode怎么用?C# SinglyLinkedListNode使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



SinglyLinkedListNode类属于SinglyLinkedLists命名空间,在下文中一共展示了SinglyLinkedListNode类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C#代码示例。

示例1: SinglyLinkedList

        // READ: http://msdn.microsoft.com/en-us/library/6x16t2tx.aspx
        // list [i] = value; i is new list q is old list
        public string this[int i]
        {
            get { return this.ElementAt(i); }
            set {
                var placeHolderList = new SinglyLinkedList();

                for (var q = 0; q < this.Count(); q++)
                {
                   if (q==i)
                    {
                        placeHolderList.AddLast(value);
                    }
                    else
                    {
                        placeHolderList.AddLast(this.ElementAt(q));
                    }
                }

                first_node = new SinglyLinkedListNode(placeHolderList.First());
                for (var w = 1; w < placeHolderList.Count(); w++)
                {
                    this.AddLast(placeHolderList.ElementAt(w));
                }
            }
        }
开发者ID:Naa2e,项目名称:csharplinkedlists,代码行数:27,代码来源:SinglyLinkedList.cs


示例2: AddAfter

        public void AddAfter(string existingValue, string value)
        {
            SinglyLinkedListNode CurrentNode = firstNode;
            SinglyLinkedListNode NodeToInsert = new SinglyLinkedListNode(value);
            if (ExistingValueExists(existingValue))
            {
                while (CurrentNode != null)
                {
                    if (CurrentNode.Value == existingValue)
                    {
                        NodeToInsert.Next = CurrentNode.Next;
                        CurrentNode.Next = NodeToInsert;
                        CurrentNode = NodeToInsert;
                    }
                    else
                    {
                        CurrentNode = CurrentNode.Next;
                    }

                }
            }
            else
            {
                throw new ArgumentException();
            }
        }
开发者ID:tombler,项目名称:LinkedListCohortJuniper,代码行数:26,代码来源:SinglyLinkedList.cs


示例3: SinglyLinkedList

        // READ: http://msdn.microsoft.com/en-us/library/6x16t2tx.aspx
        public string this[int index]
        {
            get
            {
                return this.ElementAt(index);
            }
            set
            {
                var placeholder = new SinglyLinkedList();
                for(var j = 0; j < this.Count(); j++)
                {
                    if (j == index)
                    {
                        placeholder.AddLast(value);
                    } else
                    {
                        placeholder.AddLast(this.ElementAt(j));
                    }
                }
                first_node = new SinglyLinkedListNode(placeholder.First());

                for(var k = 1; k < placeholder.Count(); k++ )
                {
                    this.AddLast(placeholder.ElementAt(k));
                }
               }
        }
开发者ID:colecathey,项目名称:csharplinkedlists,代码行数:28,代码来源:SinglyLinkedList.cs


示例4: NodeEqualityWithEqualValues

 public void NodeEqualityWithEqualValues()
 {
     SinglyLinkedListNode node1 = new SinglyLinkedListNode("foo");
     SinglyLinkedListNode node2 = new SinglyLinkedListNode("foo");
     Assert.AreEqual(node1, node2); // Equivalent to: Assert.IsTrue(node1.Equals(node2));
     // When you create your own types, you should override Equals. -- quote from the docs
 }
开发者ID:tombler,项目名称:LinkedListCohortJuniper,代码行数:7,代码来源:UnitTestSinglyLinkedListNode.cs


示例5: AddAfter

 public void AddAfter(string existingValue, string value)
 {
     /* if (last.Value == existingValue)
     {
         AddLast(value);
     } */
     SinglyLinkedListNode adding = new SinglyLinkedListNode(value);
     SinglyLinkedListNode test = first;
     while (true) {
         if (test == null)
         {
             throw new ArgumentException();
         }
         if (test != null)
         {
             if (test.Value == existingValue)
             {
                 adding.Next = test.Next;
                 test.Next = adding;
                 count++;
                 break;
             }
             test = test.Next;
         }
     }
 }
开发者ID:C-Stein,项目名称:LinkedListCohortJuniper,代码行数:26,代码来源:SinglyLinkedList.cs


示例6: SinglyLinkedList

        // READ: http://msdn.microsoft.com/en-us/library/6x16t2tx.aspx
        public string this[int i]
        {
            get { return this.ElementAt(i); }
            set
            {
                var newList = new SinglyLinkedList();

                for (var x = 0; x < this.Count(); x++)
                {
                    if (x == i)
                    {
                        newList.AddLast(value);
                    }
                    else
                    {
                        newList.AddLast(this.ElementAt(x));
                    }
                }
                    first_node = new SinglyLinkedListNode(newList.First());
                    for (var w = 1; w < newList.Count(); w++)
                {
                    this.AddLast(newList.ElementAt(w));

                }
                }
        }
开发者ID:marsette25,项目名称:csharplinkedlists,代码行数:27,代码来源:SinglyLinkedList.cs


示例7: AddLast

 public void AddLast(string value)
 {
     SinglyLinkedListNode newNode = new SinglyLinkedListNode(value);
     if (firstNode == null) firstNode = newNode;
     else LastNode().Next = newNode;
     count++;
 }
开发者ID:NewEvolution,项目名称:LinkedListCohortJuniper,代码行数:7,代码来源:SinglyLinkedList.cs


示例8: AddFirst

 public void AddFirst(string value)
 {
     SinglyLinkedListNode newNode = new SinglyLinkedListNode(value);
     newNode.Next = firstNode;
     firstNode = newNode;
     count++;
 }
开发者ID:NewEvolution,项目名称:LinkedListCohortJuniper,代码行数:7,代码来源:SinglyLinkedList.cs


示例9: AddAfter

 public void AddAfter(string existingValue, string value)
 {
     if (ElementAt(-1) == existingValue)
     {
         AddLast(value);
     }
     else
     {
         SinglyLinkedListNode current = firstNode;
         bool found = false;
         while (!current.IsLast())
         {
             if (current.Value == existingValue)
             {
                 SinglyLinkedListNode new_node = new SinglyLinkedListNode(value);
                 SinglyLinkedListNode old_next = current.Next;
                 new_node.Next = old_next;
                 current.Next = new_node;
                 found = true;
                 break;
             }
             current = current.Next;
         }
         if (!found)
         {
             throw new ArgumentException();
         }
     }
 }
开发者ID:rob1nburt0n,项目名称:LinkedListCohortJuniper,代码行数:29,代码来源:SinglyLinkedList.cs


示例10: AddAfter

        public void AddAfter(string existingValue, string value)
        {
            var node = this.first_node;
            var inputValue = IndexOf(existingValue);
            var value2Add = new SinglyLinkedListNode(value);

            if (IndexOf(existingValue) == -1)
            {
                throw new ArgumentException();
            }

            for (var i = 0; i < this.Count(); i++)
            {

                if (node.Value == existingValue)
                {
                    // gets the index of the found node
                    var foundPosition = node;

                    // set the pointer for the new node
                    value2Add.Next = foundPosition.Next;

                    // set the new value for after foundPosition
                    foundPosition.Next = value2Add;
                }
                else if (!node.IsLast())
                {
                    this.AddLast(value2Add.Value);
                }

                node = new SinglyLinkedListNode(value);
            }
        }
开发者ID:Rittycheriah,项目名称:csharplinkedlists,代码行数:33,代码来源:SinglyLinkedList.cs


示例11: SinglyLinkedList

        // READ: http://msdn.microsoft.com/en-us/library/6x16t2tx.aspx
        public string this[int i]
        {
            //uses the ElementAt function to get value (saves you from duplicating your code)
            get { return this.ElementAt(i); }
            set
            {
                //using a placeholder list helps save the values in order without having to do voodoo with the pointers
                var placeholderList = new SinglyLinkedList();
                for (var q = 0; q < this.Count(); q++)
                {
                    //if this is the place where you need to exchange the value, insert it here
                    if (q == i)
                    {
                        placeholderList.AddLast(value);
                    }
                    //otherwise, insert the value that was preexisting in the list
                    else
                    {
                        placeholderList.AddLast(this.ElementAt(q));
                    }
                }

                //now swap out the values in the placeholder list into the real list.
                //first swap the first value to clear out the old list
                first_node = new SinglyLinkedListNode(placeholderList.First());
                //then loop through the placeholder list and add the values to the real list in order
                for (var w = 1; w < placeholderList.Count(); w++)
                {
                    this.AddLast(placeholderList.ElementAt(w));
                }
            }
        }
开发者ID:Anne0011,项目名称:csharplinkedlists,代码行数:33,代码来源:SinglyLinkedList.cs


示例12: SinglyLinkedList

        // READ: http://msdn.microsoft.com/en-us/library/6x16t2tx.aspx
        public string this[int i]
        {
            get { return this.ElementAt(i); }
            set
            {
                var copy_of_list = new SinglyLinkedList();
                for (var j = 0; j < this.Count(); j++)
                {
                    if (j == i)
                    {
                        copy_of_list.AddLast(value);
                    }
                    else
                    {
                        copy_of_list.AddLast(this.ElementAt(j));
                    }
                }

                first_node = new SinglyLinkedListNode(copy_of_list.First());
                for (var o = 1; o < copy_of_list.Count(); o++)
                {
                    this.AddLast(copy_of_list.ElementAt(o));
                }
            }
        }
开发者ID:Rittycheriah,项目名称:csharplinkedlists,代码行数:26,代码来源:SinglyLinkedList.cs


示例13: NodeLastWhenLast

 public void NodeLastWhenLast()
 {
     SinglyLinkedListNode node1 = new SinglyLinkedListNode("foo");
     SinglyLinkedListNode node2 = new SinglyLinkedListNode("bar");
     node1.Next = node2;
     Assert.IsFalse(node1.IsLast());
 }
开发者ID:MKergosien,项目名称:LinkedListCohortJuniper,代码行数:7,代码来源:UnitTestSinglyLinkedListNode.cs


示例14: AddAfter

        public void AddAfter(string existingValue, string value)
        {
            if (ElementAt(-1) == existingValue)
            {
                AddLast(value);
            }
            else
            {
                SinglyLinkedListNode prevNode = firstNode;
                bool found = false;
                while (!prevNode.IsLast())
                {
                    if (prevNode.Value == existingValue)
                    {
                        SinglyLinkedListNode newNode = new SinglyLinkedListNode(value);
                        SinglyLinkedListNode oldNext = prevNode.Next;
                        newNode.Next = oldNext;
                        prevNode.Next = newNode;

                        found = true;
                        count++;
                        break;
                    }
                    prevNode = prevNode.Next;
                }

                if (!found)
                {
                    throw new ArgumentException();
                }
            }
        }
开发者ID:rachyllmorgan,项目名称:LinkedListCohortJuniper,代码行数:32,代码来源:SinglyLinkedList.cs


示例15: NodeEqualityIgnoresNext

 public void NodeEqualityIgnoresNext()
 {
     SinglyLinkedListNode node1 = new SinglyLinkedListNode("foo");
     node1.Next = new SinglyLinkedListNode("bob");
     SinglyLinkedListNode node2 = new SinglyLinkedListNode("foo");
     node2.Next = new SinglyLinkedListNode("sally");
     Assert.AreEqual(node1, node2);
 }
开发者ID:MKergosien,项目名称:LinkedListCohortJuniper,代码行数:8,代码来源:UnitTestSinglyLinkedListNode.cs


示例16: SinglyLinkedListNode

        public SinglyLinkedListNode(string value)
        {
            this.value = value;
            this.next = null;

            // Used by the visualizer:
            allNodes.Add(this);
        }
开发者ID:BrendonPierson,项目名称:LinkedListCohortJuniper,代码行数:8,代码来源:SinglyLinkedListNode.cs


示例17: SinglyLinkedList

 // READ: http://msdn.microsoft.com/en-us/library/aa691335(v=vs.71).aspx
 public SinglyLinkedList(params object[] values)
 {
     first = new SinglyLinkedListNode(values[0].ToString());
     int i = 1;
     while (i < values.Length)
     {
         AddLast(values[i].ToString());
         i += 1;
     }
 }
开发者ID:taylormiley,项目名称:LinkedListCohortJuniper,代码行数:11,代码来源:SinglyLinkedList.cs


示例18: SinglyLinkedListNode

        private string value; // same as this.value

        #endregion Fields

        #region Constructors

        public SinglyLinkedListNode(string input)
        {
            this.value = input;

            // data members default to null, but...
            this.next = null;

            // Used by the visualizer:
            allNodes.Add(this);
        }
开发者ID:Naa2e,项目名称:csharplinkedlists,代码行数:16,代码来源:SinglyLinkedListNode.cs


示例19: SinglyLinkedListNode

        private string value; //same as this.value

        #endregion Fields

        #region Constructors

        public SinglyLinkedListNode(string input)
        {
            this.value = input; //distinguishing between the two named items in this context
                                //don't have to use setter because in same class
            //Initialized data members default to null, but...
            this.next = null;

            // Used by the visualizer:
            allNodes.Add(this);
        }
开发者ID:jlsears,项目名称:csharplinkedlists,代码行数:16,代码来源:SinglyLinkedListNode.cs


示例20: SinglyLinkedList

 // READ: http://msdn.microsoft.com/en-us/library/aa691335(v=vs.71).aspx
 public SinglyLinkedList(params object[] values)
 {
     first = new SinglyLinkedListNode(null);
     if(values.Length != 0)
     {
         for (int i = 0; i < values.Length; i++)
         {
             AddLast(values[i] as string);
         }
     }
 }
开发者ID:danielcossins,项目名称:LinkedListCohortJuniper,代码行数:12,代码来源:SinglyLinkedList.cs



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


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C# Settings.PersonSetting类代码示例发布时间:2022-05-26
下一篇:
C# SinglyLinkedLists.SinglyLinkedList类代码示例发布时间:2022-05-26
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap