数据结构 链表及合并 (二)

2014-11-23 19:48:36 · 作者: · 浏览: 14
element you deleted was not found\n"); return 0; } else { temp = node->link; node -> link = temp -> link; free(temp); printf("the element is deleted\n"); return 1; } } LinkList combine(LinkList one,LinkList another){ //终于知道错在哪里 节点没有分配 根本就不存在 数据结构就是数据结构 //原本是空的 malloc一个节点 插进去 //问题二: one ->link!= NULL 这是对的 while(one!= NULL) //当one 为null了 也就没有link了 怎么 malloc 新的东西都是没用的。 Node temp ; LinkList linken; linken = one; while(one ->link!= NULL) one = one ->link; for(another;another->link!= NULL; another = another ->link){ temp = (Node)malloc(sizeof(struct SimpleLinkList)); temp ->info = another ->link ->info; temp ->link = another ->link ->link; one ->link = temp; one = one ->link; } return linken; // linken 临时指向头节点 能返回整个表 }
#include "LinkList.h"
int main(){
	int i,element;
	LinkList linklist1 = CreateNUllList();
	LinkList linklist2 = CreateNUllList();
	LinkList linklist3 = CreateNUllList();
	Node note = linklist1;
	Node note2 = linklist1;
	//if(note != NULL) printf("yes");
	for(i = 0;i<10;i++){
	    
        while(note != NULL)
				note = note ->
link; insertPost(linklist1, note,i); }//终于完成 前插 使得 for(i = 0;i<10;i++){ insertBack(linklist2, linklist2,i); } //printf("%d",linklist->link->info); printList(linklist1); printList(linklist2); /* printf("input the value of the element you search\n"); scanf("%d",&element); if(searchElement(linklist1,element) == NULL) printf("not found"); for(i=0;note2 != searchElement(linklist1,element);note2 = note2 ->link,i++ ) ;//空语句 不执行 if(searchElement(linklist1,element) == NULL) printf("not found\n"); else printf("%d is the %dth element of the linklist\n",element,i); printf("input the value of the element you delete\n"); // scanf("%d",&element); //deleteElement(linklist1,element); // printList(linklist1); */ linklist3 = combine(linklist1,linklist2); printList(linklist3); return 0; }