查看: 1476| 回复: 2
跳转到指定楼层
上一主题 下一主题
收起左侧

[Leetcode] 求助,leetcode总是要我在成员申明后面加分号。

全局:

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看附件。没有帐号?注册账号

x
本帖最后由 tobias0705 于 2014-7-29 04:09 编辑

不明白这样的运行结果:
leetcode的运行结果:Line 12: expected ';' at end of member declaration。

  1. /**
  2. * Definition for singly-linked list.
  3. * struct ListNode {
  4. *     int val;
  5. *     ListNode *next;
  6. *     ListNode(int x) : val(x), next(NULL) {}
  7. * };
  8. */

  9. class Solution {
  10. public:
  11.     ListNode* findMid(LstNode *head);

  12.     ListNode* reverse(ListNode *head);

  13.         ListNode* merge(ListNode *head1, ListNode *head2);
  14.        
  15.     void reorderList(ListNode *head);
  16. };

  17. ListNode* Solution::findMid(ListNode *head){
  18.         ListNode *fast = head, ListNode *slow = head;

  19.         if (head == NULL || head->next == NULL) return head;

  20.         while (fast->next->next != NULL && fast != NULL)
  21.         {
  22.                 fast = fast->next->next;
  23.                 slow = slow->next;
  24.         }

  25.         return slow;
  26. }
  27.        
  28. ListNode* Solution::reverse(ListNode *head){
  29.         if (head == NULL || head->next == NULL) return head;
  30.                
  31.         ListNode *curNode = head, *nextNode;

  32.         while (curNode->next != NULL)
  33.         {
  34.                 nextNode = curNode->next;
  35.                 curNode->next = nextNode->next;
  36.                 nextNode->next = head;
  37.                 head = nextNode;
  38.         }

  39.         return head;
  40. }
  41.        
  42. ListNode* Solution::merge(ListNode *head1, ListNode *head2){
  43.         ListNode *tmp, *cur1 = head1, *cur2 = head2;
  44.                
  45.         while (cur2 != NULL)
  46.         {
  47.                 tmp = cur2;
  48.                 cur2 = cur2->next;
  49.                 tmp->next = cur1->next;
  50.                 cur1->next = tmp;
  51.                 cur1 = tmp->next;
  52.         }
  53. }
  54.        
  55. void Solution::reorderList(ListNode *head) {
  56.     ListNode *head2 = findMid(head), *head1 = head;
  57.         
  58.         head2 = reverse(head2);
  59.         head1 = merge(head1, head2);
  60.         head = head1;
  61. }
复制代码


上一篇:Networking 和 low level的题目怎么准备呢?
下一篇:leetcode sortList
🔗
yxyxyx 2014-7-29 04:50:55 | 只看该作者
全局:
先不说别的,LstNode是啥?
回复

使用道具 举报

🔗
Linzertorte 2014-7-29 07:50:41 | 只看该作者
全局:
函数声明与定义是两个不同的东西。你在类里声明成员函数。是一个有效的statement.是需要加分号的
void f(){} 是一个函数定义。此函数do nothing.
void f();是一个函数声明。这之后你必须提供它的定义。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表