題解 夏令營旗手(雙向鍊錶)

2021-10-09 05:38:09 字數 806 閱讀 4368

題目

解題思路:利用雙向鍊錶,設定乙個頭結點和乙個尾結點,這樣方便刪除結點的操作,即模擬出隊,鍊錶中剩下的最後乙個結點的資料域即為所求的編號。先建立乙個雙向鍊錶,並設乙個flag來標記報數的方向,需要判斷指標是否指向尾結點或頭結點,是的話需要改變報數方向,在報數過程中也要判斷下乙個報數的結點是否為頭結點或尾結點,是的話,直接改變報數方向。

#include

#include

typedef struct lnodelnode,

*linklist;

int main()

p=l;s=

1;int j=n,flag=0;

while

(j!=1)

if(p==r)

while

(s}else}}

p->next-

>prior=p-

>prior;

p->prior-

>next=p-

>next;

q=p;

if(flag==

0) p=p-

>next;

else p=p-

>prior;

free

(q); s=

1;j--;}

printf

("%d",l

->next-

>data)

;return0;

}

夏令營騎手 鍊錶

夏令營騎手 鍊錶 雙向鍊錶 來回查詢 注意控制改變方向的條件 pragma gcc optimize 2 include using namespace std typedef struct line l struct line int main p pnext null p phead int t...

開源夏令營(1)

前段時間主要做了git的一些配置和熟悉 git pull 從其他的版本庫 既可以是遠端的也可以是本地的 將 更新到本地。git add 是將當前更改或者新增的檔案加入到git的索引中,加入到git的索引中就表示記入了版本歷史中,這也是提交之前所需要執行的一步 git rm 從當前的工作空間中和索引中...

開源夏令營總結

時間過得很快,開源夏令營就要結束了,今天就簡單總結一下這段時間的所學所做。1.研究源 因為專案已經有一定規模,所以第一步肯定是要先弄懂現有專案結構和 邏輯。view層負責把資料顯示出來,包括每一幀的具體資料,和骨骼父子關係等 model,collection會負責資料的驗證和訪問。每當使用者操作時,...