伊莉討論區

標題: C# 指標 [打印本頁]

作者: asdfg0205    時間: 2017-5-6 02:01 PM     標題: C# 指標

本帖最後由 asdfg0205 於 2017-5-7 02:51 PM 編輯

[attach]118682654[/attach]
請問 該怎麼刪除指標(這沒辦法用 removeat 去刪除欸)
然後 我建立了 45好了 但是 要怎讓他插在40後面.50前面 (在顯示那邊用 IF判斷 ??)
還有 請問 為什麼 上面的類別 (Node) 裡面的屬性 資料型態 還可以用自己阿? 第一次看到...

作者: donghaozz2    時間: 2017-5-13 11:10 AM

本帖最後由 donghaozz2 於 2017-5-13 11:17 AM 編輯

作業明顯是要你寫2個 functions
寫一個插入

寫一個刪除
大概是
Node remove(Node root,int remove)
{
        if(root.Value==remove)
        {
                Node re=root.next;
                root=re;
                return root;
        }
        Node p= root;
        int i= p.Value;
        Node last;
        while(i!=remove&&p.next!=NULL)
        {
              last=p;
              p=p.next;
              i=p.Value;
         }
         if(i==remove)
         {
                last.next=p.next;
                p.next =NULL;
         }
        return root;
}
這個是作業2刪除一個數 root 是你的鍊錶的第一個數
remove 是你要刪的數
具體怎麼樣沒有測試大概就是這個意思 看懂就會了
作者: donghaozz2    時間: 2017-5-13 11:37 AM

寫一個插入 按順序插入
Node add(Node root, Node new)
{
     if(new.Value<root.Value)
     {
            new.next=root;
            return new;
     }
     Node p=root;
     Node last;
     while(p.next!=NULL)
     {
           last=p;
           p=p.next;
          if(new.value<p.Value)
           {
               last.next=new;
               new.next=p;
               return root;
            }
                 
     }
     p.next=new;
     new.next=NULL;
     return root;
}
new 是你要加的新數
返回的都是第一個數
具體怎麼樣沒有測試
還有上面都是C語言寫出來的 你上面不是C吧 C++什麼之類的吧
關於 你的Node 是結構體 買本數據結構的書 看吧   Node 是 結構的 你寫的是單鏈結構
就是  1-》2-》3-》4




歡迎光臨 伊莉討論區 (http://s03.p02.eyny.com/) Powered by Discuz!