1. 鍊錶反轉,
// 3指標,原地反轉
/*2. 翻轉鍊錶m到n的結點,要求一次遍歷完成(leetcode92)* * definition for singly-linked list.
* struct listnode
* }; */
class
solution
return
pre;}};
node* reversebetween(node* head, int m, int3. 兩個鍊錶相加(leetcode2)n)
return
h.next;
}
input: (2 -> 4 -> 3) + (5 -> 6 -> 4)
output: 7 -> 0 -> 8
explanation: 342 + 465 = 807.
listnode* addtwonumbers(listnode* l1, listnode*l2)4. 求煉表中的倒數第k個節點return
vhead.next;
}
listnode* getkthfromend(listnode* head, int5. 判斷兩個鍊錶是否相交 leetcode160k)
return
p1; }
思路一:最簡單的先遍歷一遍得到lena, lenb,讓長的先走掉差,再 同步走
思路二:先兩者同時走,先到null的去另一條,兩者再走掉差,此時長的也到null了改去另一條,此時剩下的長度相同。
思路三:將其中一條首尾相連,轉化成了找環的入口
//5. 頭插法和輸出思路二
listnode *getintersectionnode(listnode *heada, listnode *headb)
return
pa;}
#includeusingnamespace
std;
typedef
struct
node
}node;
//構建鍊錶
//頭插法
node* insert(node* head, int
val)
//遍歷鍊錶
void print(node*head)}//
逆序輸出
void print_r(node*head)
print_r(head->next);
printf(
"%d
", head->val);}//
求倒數第k個節點
void kth_r(node * head, int
k) printf(
"p2: %d\n
", p2->val);
}int a = , n = 5
;int
main()
print_r(head);
printf("\n
");kth_r(head, 2);
return0;
}
資料庫表操作題
4 參見如下表結構 出版社 出版社 char 2 出版社名稱 varchar2 32 圖書 圖書編號 char 8 圖書名稱 varchar2 128 出版社 char 2 作者代號 char 4 圖書簡介 varchar2 128 作者代號 char 4 作者名稱 varchar2 10 性別 c...
二級c 基本操作題小結
經過這幾天對二級c 的分類學習,感覺還是有規律可循的,基於我對基本操作的學習,總結知識點如下 建構函式的特性 建構函式的名必須與定義它的類同名 建構函式沒有返回值。如果在建構函式前加void,int,double等是錯誤的 建構函式被宣告定義為公有函式 建構函式在建立時由系統自動呼叫 析構函式也是類...
字串操作題
請寫乙個函式,實現以下功能 字串 open door 轉換成 opendoor make by id 轉換成 makebyid 下面是我個人的一些方法 a open door b str replace open door open door a 字串替換函式將 替換成 使乙個單詞變成兩個單詞 na...