题目描述:
给你一个 非空 链表的头节点 head ,表示一个不含前导零的非负数整数。
将链表 翻倍 后,返回头节点 head 。
示例:


解题思路:
先计算第一位是否超出位数,超出新建存储该数值,再逐个翻倍,超过9前一位加一,该数字对10求模。
相关代码:
/**
* Definition for singly-linked list.
* public class ListNode {
* int val;
* ListNode next;
* ListNode() {}
* ListNode(int val) { this.val = val; }
* ListNode(int val, ListNode next) { this.val = val; this.next = next; }
* }
*/
class Solution {
public ListNode doubleIt(ListNode head) {
ListNode p=head,q=null;
if(p.val*2>9) {
q=new ListNode(0);
q.next=head;
head=q;
} else {
q=head;
}
while(p!=null) {
p.val*=2;
if(p.val/10>0) {
p.val%=10;
q.val+=1;
}
q=p;
p=p.next;
}
return head;
}
}
代码效率:





![[PaddlePaddle] [学习笔记] [上] 计算机视觉(卷积、卷积核、卷积计算、padding计算、BN、缩放、平移、Dropout)](https://img-blog.csdnimg.cn/4354d070d6434c8eab53dae68509836c.png#pic_center)














