實現功能:
*/#include#include#include#includeusing namespace std;
typedef struct nodelist
node;
int listtotal=0;
node * creatlist(node *head)
p1->value=data;
p1->next=null;
if(head==null)
else
}return head;
}void printlist(node *head)
printf("一共有%d個節點\n",listtotal);
}node * reverselist(node *head)
return cp;
}node * insertlist(node * head,int index,int data)//需要建立兩個臨時變數 乙個用來給新建待插入的節點 另乙個用來遍歷的節點變數
p1=(node*)malloc(sizeof(node));
if(p1==null)
p1->next=null;
p1->value=data;
if(index==0)//插入頭
else
p1->next=p2->next;
p2->next=p1;
} return head;
}node * nodedelet(node * head,int index)
if(1==index)
else
p2=p1->next;
p1->next=p1->next->next;//這種思路是非常好的 只要找到刪除節點前面的乙個節點就可以了(已測試頭結點 中間 尾部節點 通過)
free(p2);
} return head;
}int main(void)
返回head不僅在子函式裡面返回 呼叫後要返回給原來的head head=insertlist(head,listtotal,-99);
核心功能:翻轉
while(np)
刪除p2=p1->next;
p1->next=p1->next->next;//這種思路是非常好的 只要找到刪除節點前面的乙個節點就可以了(已測試頭結點 中間 尾部節點 通過)
free(p2);
插入p1->next=p2->next;
p2->next=p1;
*/
鍊錶相關操作
include include using namespace std 鍊錶結構體 struct listnode 是否為空 bool isempty listnode list position是否是最後乙個 bool islast listnode position,listnode list ...
鍊錶相關操作
class listnode 1.鍊錶反轉,遍歷原鍊錶,採用頭插法將數值插入新鍊錶 public listnode reverse listnode p return cur 2.兩個鍊錶相加,如 1 2 3加4 5 6等於5 7 9。思路 短的鍊錶高位用0補。public class soluti...
鍊錶相關操作
關於鍊錶的頭插法 尾插法 刪除節點 插入節點。include include typedef struct listlist,linklist linklist creat onhead linklist head,int x linklist creat ontail linklist head,...