コード例 #1
0
ファイル: LinkListNode2.cs プロジェクト: jfarr133/Game
        ////////////////////////////////////////////////////////////////////////////////////////////////////
        /// <summary>   Binary search. </summary>
        ///
        /// <remarks>   Jakob, 15/09/2018. </remarks>
        ///
        /// <param name="searchValue">  The search value. </param>
        ///
        /// <returns>   An int. </returns>
        ////////////////////////////////////////////////////////////////////////////////////////////////////

        public int binarySearch(int searchValue)
        {
            this.SortList();
            LinkListNode current    = HeadNode;
            ArrayList    myTempList = new ArrayList();

            for (LinkListNode i = current; i != null; i = i.getNext())
            {
                myTempList.Add(i.getValue());
            }
            return(myTempList.BinarySearch(searchValue));
        }
コード例 #2
0
ファイル: Form1.cs プロジェクト: jfarr133/Game
        void client_Received2(Client2 sender2, byte[] data2)
        {
            Invoke((MethodInvoker) delegate
            {
                if (txtAnswer.Text == Encoding.Default.GetString(data2))
                {
                    MessageBox.Show("You were correct");
                    txtFirstNumber.Text  = "";
                    cboxOperator.Text    = "";
                    txtSecondNumber.Text = "";
                    txtAnswer.Text       = "";
                    btnSend.Enabled      = true;
                }
                else if (txtAnswer.Text != Encoding.Default.GetString(data2))
                {
                    Values numberValues = new Values(Convert.ToUInt16(txtFirstNumber.Text),
                                                     Convert.ToUInt16(txtSecondNumber.Text), cboxOperator.Text, Convert.ToUInt16(txtAnswer.Text), false);

                    //add to list to be displayed
                    values.Add(numberValues);

                    //create new node and add to nodelist
                    LinkListNode node = new LinkListNode(numberValues);
                    valueNode.AddValuesNode(node);

                    StringBuilder sb = new StringBuilder();
                    if (txtRichLinkedList.Text == "")
                    {
                        sb.Append("Head <-> ");
                        sb.Append(valueNode.getCurrentNode().NodeToString());
                    }
                    else
                    {
                        sb.Append(txtRichLinkedList.Text);
                        sb.Append(" <-> ");
                        sb.Append(valueNode.getCurrentNode().NodeToString());
                    }

                    txtRichLinkedList.Text = sb.ToString();
                    MessageBox.Show("You were incorrect");

                    txtFirstNumber.Text  = "";
                    cboxOperator.Text    = "";
                    txtSecondNumber.Text = "";
                    txtAnswer.Text       = "";
                    btnSend.Enabled      = true;
                }
            });
        }
コード例 #3
0
ファイル: LinkListNode2.cs プロジェクト: jfarr133/Game
        ////////////////////////////////////////////////////////////////////////////////////////////////////
        /// <summary>   Sort list. </summary>
        ///
        /// <remarks>   Jakob, 15/09/2018. </remarks>
        ////////////////////////////////////////////////////////////////////////////////////////////////////

        public void SortList()
        {
            LinkListNode current = HeadNode;

            for (LinkListNode i = current; i.getNext() != null; i = i.getNext())
            {
                for (LinkListNode j = i.getNext(); j != null; j = j.getNext())
                {
                    if (i.getValue() > j.getValue())
                    {
                        int Temp = j.getValue();
                        j.setMyValue(i.getValue());
                        i.setMyValue(Temp);
                    }
                }
            }
        }
コード例 #4
0
ファイル: LinkListNode2.cs プロジェクト: jfarr133/Game
        ////////////////////////////////////////////////////////////////////////////////////////////////////
        /// <summary>   Adds the values node. </summary>
        ///
        /// <remarks>   Jakob, 15/09/2018. </remarks>
        ///
        /// <param name="node"> The node. </param>
        ////////////////////////////////////////////////////////////////////////////////////////////////////

        public void AddValuesNode(LinkListNode node)
        {
            if ((HeadNode == null) && (CurrentNode == null) && (TailNode == null))
            {
                HeadNode    = node;
                CurrentNode = node;
                TailNode    = node;
                count++;
            }
            else
            {
                CurrentNode = node;
                HeadNode.setPrevious(node);
                CurrentNode.setNext(HeadNode);
                setHeadNode(CurrentNode);
                count++;
            }
        }
コード例 #5
0
ファイル: LinkListNode.cs プロジェクト: jfarr133/Game
        ////////////////////////////////////////////////////////////////////////////////////////////////////
        /// <summary>   Sets a next. </summary>
        ///
        /// <remarks>   Jakob, 15/09/2018. </remarks>
        ///
        /// <param name="theNode">  the node. </param>
        ////////////////////////////////////////////////////////////////////////////////////////////////////

        public void setNext(LinkListNode theNode)
        {
            this.next = theNode;
        }
コード例 #6
0
ファイル: LinkListNode.cs プロジェクト: jfarr133/Game
        ////////////////////////////////////////////////////////////////////////////////////////////////////
        /// <summary>   Sets the previous. </summary>
        ///
        /// <remarks>   Jakob, 15/09/2018. </remarks>
        ///
        /// <param name="theNode">  the node. </param>
        ////////////////////////////////////////////////////////////////////////////////////////////////////

        public void setPrevious(LinkListNode theNode)
        {
            this.previous = theNode;
        }
コード例 #7
0
ファイル: LinkListNode2.cs プロジェクト: jfarr133/Game
        ////////////////////////////////////////////////////////////////////////////////////////////////////
        /// <summary>   Sets tail node. </summary>
        ///
        /// <remarks>   Jakob, 15/09/2018. </remarks>
        ///
        /// <param name="node"> The node. </param>
        ////////////////////////////////////////////////////////////////////////////////////////////////////

        public void setTailNode(LinkListNode node)
        {
            TailNode = node;
        }
コード例 #8
0
ファイル: LinkListNode2.cs プロジェクト: jfarr133/Game
        ////////////////////////////////////////////////////////////////////////////////////////////////////
        /// <summary>   Sets head node. </summary>
        ///
        /// <remarks>   Jakob, 15/09/2018. </remarks>
        ///
        /// <param name="node"> The node. </param>
        ////////////////////////////////////////////////////////////////////////////////////////////////////

        public void setHeadNode(LinkListNode node)
        {
            HeadNode = node;
        }
コード例 #9
0
ファイル: LinkListNode2.cs プロジェクト: jfarr133/Game
        ////////////////////////////////////////////////////////////////////////////////////////////////////
        /// <summary>   Sets current node. </summary>
        ///
        /// <remarks>   Jakob, 15/09/2018. </remarks>
        ///
        /// <param name="node"> The node. </param>
        ////////////////////////////////////////////////////////////////////////////////////////////////////

        public void setCurrentNode(LinkListNode node)
        {
            CurrentNode = node;
        }