夏令營騎手-鍊錶
雙向鍊錶+來回查詢
注意控制改變方向的條件
//#pragma gcc optimize(2)
#include
using
namespace std;
typedef
struct line l;
struct line
;int
main()
p->pnext=
null
; p=phead;
int t =1;
//標記數數的方向
int s = n;
while
(s>1)
}else
if(t ==0)
}}if(p-
>plast!=
null
&&p-
>pnext!=
null
)//如果要出隊的數前後還都有數存在,按照此方法
else
else
if(p-
>pnext==
null
)//md少寫了個else,艹,這裡如果不寫else,最後剩兩個數的時候就會走完上一迴圈直接因為滿足此迴圈條件而走此迴圈,從而導致出錯
} s--;}
printf
("%d\n"
,p->num)
;/*p=phead;
while(p->pnext!=null)//列印鍊錶
printf("%d\n",p->num);
while(p->plast!=null)
printf("%d\n",p->num);*/
return0;
}
C語言雙向鍊錶題目 猴子選大王 夏令營騎手
猴子選大王 2166 成圈的鍊錶 include include include include struct line int main p next head head last p p head int s n while s 1 p next last p last p last next ...
題解 夏令營旗手(雙向鍊錶)
題目 解題思路 利用雙向鍊錶,設定乙個頭結點和乙個尾結點,這樣方便刪除結點的操作,即模擬出隊,鍊錶中剩下的最後乙個結點的資料域即為所求的編號。先建立乙個雙向鍊錶,並設乙個flag來標記報數的方向,需要判斷指標是否指向尾結點或頭結點,是的話需要改變報數方向,在報數過程中也要判斷下乙個報數的結點是否為頭...
開源夏令營(1)
前段時間主要做了git的一些配置和熟悉 git pull 從其他的版本庫 既可以是遠端的也可以是本地的 將 更新到本地。git add 是將當前更改或者新增的檔案加入到git的索引中,加入到git的索引中就表示記入了版本歷史中,這也是提交之前所需要執行的一步 git rm 從當前的工作空間中和索引中...