//training5:指標和鍊錶訓練
//1.
題目:有n個人圍成一圈,順序排號,從第乙個開始報數(從1到3報數),凡報到3的人退出圈子,//
//問最後最後留下的是原來第幾號的那位.
#include
#include
typedef struct baoshu b;
int main()
head=p;
p1=p;
printf("n:");
scanf("%d",&n);
for(i=0;i
p1->next=head;
p=head;
j=n;
i=0;
while(j>1)
p=p->next; }
printf("%d\n",p->a);
free(p);
p=null;
return 0; }
#include
#include
#include
typedef struct boy b;
int n=0;
b* bcreate()
printf("if age=0 quit, printf name age(enter in):\n");
scanf("%s",&p1->name);
scanf("%d",&p1->age);
head=p1;
if(p1->age==0)
return null;
p2=p1;
while((p1->age)!=0)
p2->next=null;
free(p1);
p1=null;
return head; }
b* gcreate()
printf("if age=0 quit, printf name age(enter in):\n");
scanf("%s",&p1->name);
scanf("%d",&p1->age);
head=p1;
if(p1->age==0)
return null;
p2=p1;
while((p1->age)!=0)
p2->next=null;
free(p1);
p1=null;
return head; }
void shuchu(b * head)
printf("\n"); }
b * hebing(b *b,b* g)
void paixu(b **head)
} p=*head;
*head=p->next;
free(p);
p=null; }
void nixu(b ** head)
*head=p1; }
void find(b *head)
while(p->next!=null)
printf("i=%d\n",i);
p=head;
for(j=0;jp=p->next;
j=p->age;
p1=head;
for(k=0;kp1=p1->next;
k=p1->age; //
printf("j=%d k=%d\n",j,k);
if((data-j)<(k-data))
} else if((data-j)>(k-data))
// printf("%s\n",p1->name); }
else
// printf("%s ",p->name);
p1=head;
for(k=0;kp1=p1->next;
j=p1->age;
p=head;
while(p!=null)
//printf("%s\n",p1->name); }
}int main()
多級指標和鍊錶
如果看到乙個宣告 type ptr 你會怎麼想?估計一半人都瘋了,如此宣告乙個變數的人本身要麼是乙個高手,要麼是乙個低能。這樣的一排 事實上表示的是乙個鍊錶,鍊錶上的每乙個元素可以分布在記憶體的任意乙個位置,它們之間每兩個通過乙個 相聯絡。p定義乙個指標,p指向乙個記憶體位置,該位置中儲存p宣告的資...
指標 引用和鍊錶
還是課堂的筆記。記憶體中的乙個位元組為乙個儲存單元 byte 儲存單元的編號是位址 變數的位址是該變數所在儲存區域的第乙個位元組 單元 的位址 位址成為變數的指標 定義格式 型別說明符 指標變數名 int pi float pf 1 乙個指標變數只能指向統一資料型別的變數。在定義指標變數時明確給定的...
Leetcode 鍊錶題目
鍊錶是個線性資料結構 由零個或多個資料元素組成的有限序列 第乙個元素無前驅,最後乙個元素沒有後繼,其餘元素乙個前驅乙個後繼 leetcode 160 找出兩個鍊錶的交點 本題中要找出兩條鍊錶的交點,首先要知道鍊錶的特性,下乙個節點的位置只能由上乙個節點來確定,所以不能直接確定某個值得特定的位置,因此...