作者w199381 (恶心肥宅)
看板C_and_CPP
标题[问题] C语言片段求解
时间Sat Feb 23 14:13:09 2019
开发平台(Platform): (Ex: Win10, Linux, ...)
Win10
编译器(Ex: GCC, clang, VC++...)+目标环境(跟开发平台不同的话需列出)
未知
额外使用到的函数库(Library Used): (Ex: OpenGL, ...)
问题(Question):
C语言指标求解
喂入的资料(Input):
listA = [4,1,8,4,5], listB = [5,0,1,8,4,5]
程式码(Code):(请善用置底文网页, 记得排版,禁止使用图档)
/** * Definition for singly-linked list.
* struct ListNode {
* int val;
* struct ListNode *next;
* };
*/
typedef struct ListNode ln;
struct ListNode *getIntersectionNode(ln *headA, ln *headB) {
int lenA = 0,lenB = 0;
for(ln* pA = headA; pA; pA = pA->next) lenA++;//问题在这
for(ln* pB = headB; pB; pB = pB->next) lenB++;//问题在这
for(int i = 0; i<lenA-lenB; i++) headA = headA->next;
for(int i = 0; i<lenB-lenA; i++) headB = headB->next;
while(headA != headB){
headA = headA->next;
headB = headB->next;
}
return headA;
}
补充说明(Supplement):
ln* pA = headA 这我可以理解,new一个Listnode
pA:以此为for条件是什麽原理?
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 36.236.59.205
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_and_CPP/M.1550902392.A.01E.html
1F:推 cutekid: pA != 0 的意思 02/23 14:27
2F:→ w199381: 感谢楼上 了解了! 02/23 14:42