zoukankan      html  css  js  c++  java
  • 面试随缘刷题--day6

    leetcode no.2 两数相加

    链表问题,题目没难度,问题都在链表

    • 注意每一次都是要ListNode*temp=new Listnode(0)[如果不在leetcode里面的时候就自己写new node],这时候要用pre->next=temp,先指定temp是谁的next再给他new是无效的
    • 俩表都没了还可能会有进位符
    • 返回的是ans->next
    /**
     * Definition for singly-linked list.
     * struct ListNode {
     *     int val;
     *     ListNode *next;
     *     ListNode(int x) : val(x), next(NULL) {}
     * };
     */
    class Solution {
    public:
        ListNode* addTwoNumbers(ListNode* l1, ListNode* l2) {
            ListNode*ans=new ListNode(0);
            ListNode*pre=ans;
            ListNode*temp=ans->next;
            ListNode*temp1=l1;
            ListNode*temp2=l2;
            int tempnum=0;
            while(temp1!=NULL && temp2!=NULL)
            {
                temp=new ListNode(0);
                temp->val=(temp1->val+temp2->val+tempnum)%10;
                tempnum=(temp1->val+temp2->val+tempnum)/10;
                pre->next=temp;
                temp=temp->next;
                pre=pre->next;
                temp1=temp1->next;
                temp2=temp2->next;
            }
            while(temp1!=NULL)
            {
                temp=new ListNode(0);
                temp->val=(temp1->val+tempnum)%10;
                tempnum=(temp1->val+tempnum)/10;
                pre->next=temp;
                pre=pre->next;
                temp=temp->next;
                temp1=temp1->next;
            }
            while(temp2!=NULL)
            {
                temp=new ListNode(0);
                temp->val=(temp2->val+tempnum)%10;
                tempnum=(temp2->val+tempnum)/10;
                pre->next=temp;
                pre=pre->next;
                temp=temp->next;
                temp2=temp2->next;
            }
            if(tempnum)
            {
                temp=new ListNode(0);
                temp->val=tempnum;
                pre->next=temp;
    
            }
            return ans->next;
        }
    };
    View Code

     正常的链表在create和delete用到pre,insert和find不用

    时间才能证明一切,选好了就尽力去做吧!
  • 相关阅读:
    [学习记录]Flask会话维护
    [学习记录]MarkDown语法
    [学习记录]jinja2模板语法
    [学习记录]flask资源加载
    [学习记录]flask初步
    [常用操作]使用github桌面版上传代码
    [学习记录]简明扼要的Sass
    接口Mock测试
    12 | 从0到1:你的第一个GUI自动化测试
    navicat导出DDL语句
  • 原文地址:https://www.cnblogs.com/tingxilin/p/13499072.html
Copyright © 2011-2022 走看看