问题描述:计算链表中有多少个节点.
样例:给出 1->3->5, 返回 3.
我觉得这可能是在LintCode中看到的最简单、最合我胃口的题了,不说了,直接粘代码吧。
/**
* Definition of ListNode
* class ListNode {
* public:
* int val;
* ListNode *next;
* ListNode(int val) {
* this->val = val;
* this->next = NULL;
* }
* }
*/
class Solution {
public:
/*
* @param head: the first node of linked list.
* @return: An integer
*/
int countNodes(ListNode * head) {
// write your code here
ListNode *p = head;
int i = 0;
while(p != NULL){
i++;
p = p->next;
}
return i;
}
};
如有错误,欢迎指出。