最贊回答 / Lavi_La
(1)currentnode是這個指針類型的變量,它也是需要占據(jù)一定的內(nèi)存來存儲數(shù)據(jù)的,存放的就是它指向內(nèi)存的地址,釋放掉的currentnode指向的內(nèi)存,即解除currentnode和它指向的內(nèi)存的關(guān)系,currentnote占據(jù)的內(nèi)存還是存在的。下面是我畫的圖希望對你有幫助。<...圖片...>(2)一般可以認為new和delete是互為對應的
2016-09-16
已采納回答 / 慕粉3921911
因為索引從零開始,最后一個元素是length-1,不是length,比如說有4個元素,長度為四,索引分別為0,1,2,3,所以最后一個是4-1,而不是4
2016-09-13
最新回答 / 黑巫師0
老師這樣定義的? int temp;?? 是一個整型變量,當調(diào)用刪除函數(shù)是傳入的實參是 &temp,是為將刪除的元素能存入到temp中。你提出的 cout<<temp<<endl ; 這是是輸出temp的值。要輸出它的地址應該寫成cout<<&temp<<endl ; 希望對你有幫助。
2016-09-12
最贊回答 / 黑巫師0
其實我也覺得應該這樣,刪除函數(shù)應該有判空操作,線性表為空的話,直接返回false;插入函數(shù)應該有判滿操作,線性表已滿時也直接返回false,這樣應該更嚴謹一些。
2016-09-06
最新回答 / 黑巫師0
定義的臨時結(jié)點指針currentNode經(jīng)過循環(huán)之后指向鏈表的尾結(jié)點,因為它是指針變量,存放的是尾結(jié)點的地址,所以通過它來改變鏈表本身尾結(jié)點的指向是完全行得通的。即currentNode->next = NewNode? 就等效于鏈表自己的指向尾節(jié)點的節(jié)點的next指向newNode!希望對你有所幫助~
2016-09-05
已采納回答 / kming
先找到聯(lián)系人位置在刪除,自己寫的,僅供參考void deletePerson(List<Node> *pl,Node *temp){ ? ?Node node; ? ?cout << "請輸入姓名:" << endl; ? ?cin >> node.data.name; ? ?cout << "請輸入電話:" << endl; ? ?cin >> node.data.phone; ? ?int locate = pl-&g...
2016-08-28
最新回答 / kming
因為在c語言中沒有對象這個東西,函數(shù)和數(shù)據(jù)是獨立的,函數(shù)要處理List *list,肯定要作為參數(shù)傳進來,才能知道函數(shù)要處理的是List *list,c++里面這個函數(shù)是對象的成員函數(shù),要處理的就是對象本身的數(shù)據(jù),可以省略,也可以傳入*this
2016-08-28
最新回答 / Posin丶biting
不知道你問的是順序表還是鏈表,如果是順序表的話就是要刪除元素后一位元素開始,依次往前移動一位即可。然后Length--就可以了。鏈表的話,這樣應該說不通!
2016-08-22
已采納回答 / 大白鵝灰灰
m_pList是鏈表開頭,不含數(shù)據(jù)。如果類比數(shù)組下標,m_pList->next對應的是k=0。想要刪除第i個元素,自然是定位到k=i了。
2016-08-11