数据结构是单向链表,并且是按照算数进行的。
思路如下
原结果

1 2 3 4 
      3 4 
1 2 6 8
思路结果
 4 3 2 1
 4 3
 8 6 2 1
 1 2 6 8 
大致就是单向链表的翻转,然后进行计算,然后在翻转。即可得出答案。本人才疏学浅只会写一种写法。

// 定义的单向基本链表结构
class ListNode {int val;ListNode next;ListNode(int x) {val = x;}
}
class SolutionAdd {//翻转方法,把单向链表翻转public ListNode fanzhuan(ListNode listNode){ListNode pre = null;ListNode succ = null;while (listNode != null) {succ = listNode.next;listNode.next = pre;pre = listNode;listNode = succ;}return pre;}//计算的单向链表求和public ListNode add(ListNode node1, ListNode node2) {ListNode listNode = new ListNode(0);ListNode p = listNode;int sum = 0;while (node1 != null || node2 != null || sum!=0) {if (node1 != null) {sum += node1.val;node1 = node1.next;}if (node2 != null) {sum += node2.val;node2 = node2.next;}p.next = new ListNode(sum % 10);sum = sum / 10;p = p.next;}return listNode.next;}
}

public class Main {public static void main(String[] args) {//装载模拟数据 startListNode listNode1 = new ListNode(1);ListNode listNode2 = new ListNode(2);ListNode listNode3 = new ListNode(3);ListNode listNode4 = new ListNode(4);listNode1.next = listNode2;listNode2.next = listNode3;listNode3.next = listNode4;ListNode listNode5 = new ListNode(3);ListNode listNode6 = new ListNode(4);listNode5.next = listNode6;//装载模拟数据 endSolutionAdd solutionAdd = new SolutionAdd();//翻转链表listNode1ListNode fanzhuan = solutionAdd.fanzhuan(listNode1);//翻转链表listNode5ListNode fanzhuan1 = solutionAdd.fanzhuan(listNode5);//进行计算ListNode add = solutionAdd.add(fanzhuan, fanzhuan1);//再次翻转得到结果ListNode fanzhuan3 = solutionAdd.fanzhuan(add);//输出最后的单链表记录System.out.print(fanzhuan3.val);                //1System.out.print(fanzhuan3.next.val);           //2System.out.print(fanzhuan3.next.next.val);      //6System.out.print(fanzhuan3.next.next.next.val); //8}
}

算法面试题-用单向链表表示十进制整数,求两个正整数之和。1234+34=1268相关推荐

  1. 九章算法面试题72 翻转链表I

    九章算法官网-原文网址 http://www.jiuzhang.com/problem/73/ 题目 给一个链表,然后我们要把这个链表进行翻转. 在线测试本题 http://www.lintcode. ...

  2. 一周刷爆LeetCode,算法da神左神(左程云)耗时100天打造算法与数据结构基础到高级全家桶教程,直击BTAJ等一线大厂必问算法面试题真题详解 笔记

    一周刷爆LeetCode,算法大神左神(左程云)耗时100天打造算法与数据结构基础到高级全家桶教程,直击BTAJ等一线大厂必问算法面试题真题详解 笔记 教程与代码地址 P1 出圈了!讲课之外我们来聊聊 ...

  3. 数据结构经典算法面试题

    转自:http://hi.baidu.com/geogre_jsj/blog/item/e4b98fd2aab5aa3611df9b92.html 由于这些题,实在太火了.所以,应广大网友建议要求,在 ...

  4. 微软的100道算法面试题(终结版)

    前言 数据结构与算法的重要性已不言而喻,最近,我整理出十大经典排序算法.五大常用算法总结,今天特意整理出微软面试的100题,若有不足之处,欢迎指正!由于篇幅过长,前30道题目写在上一篇,大家可以进我的 ...

  5. 2021最新汇总数据结构与算法面试题(准备面试的可以看看)

    闲来无事整理了一下数据结构与算法面试题,准备面试的可以看看. 这份面试题汇总除了Java语言的,我还整理了C++和Golang语言的,无论你是做什么开发这份数据结构与算法面试题汇总都可以看,如果你是做 ...

  6. 200 道算法面试题集锦!Python 实现,含华为、BAT 等校招真题!

    点击上方"AI有道",选择"置顶"公众号 重磅干货,第一时间送达 春招临近,无论是要找工作的准毕业生,还是身在职场想要提升自己的程序员,提升自己的算法内功心法. ...

  7. 66 道前端算法面试题附思路分析助你查漏补缺

    大家好,我是漫步. 今天来分享一篇干货,前端关于算法的分析不多,下文列举了66道前端算法面试题,希望对你有所帮助. 作者:Eno_Yao https://segmentfault.com/a/1190 ...

  8. 力扣高频|算法面试题汇总(七):树

    力扣高频|算法面试题汇总(一):开始之前 力扣高频|算法面试题汇总(二):字符串 力扣高频|算法面试题汇总(三):数组 力扣高频|算法面试题汇总(四):堆.栈与队列 力扣高频|算法面试题汇总(五):链 ...

  9. 【2021最新版】数据结构+算法面试题总结(9+20道题含答案解析)

    文章目录 1.栈(stack) 2.队列(queue) 3.链表(Link) 4.散列表(Hash Table) 5.排序二叉树 6. 前缀树 7.红黑树 8.B-TREE 9.位图 算法面试题 1. ...

  10. 经典算法面试题及答案

    经典算法面试题及答案  1. 时针分针重合几次 表面上有60个小格,每小格代表一分钟, 时针每分钟走1/12小格,分针每分钟走1小格,从第一次重合到第二次重合分针比时针多走一圈即60小格,所以 60/ ...

最新文章

  1. 'htons' was not declared in this scope 解决
  2. CISCO专用协议CDP
  3. HDOJ5542-The Battle of Chibi【树状数组,dp】
  4. 15-[JavaScript]-ECMAScript 1
  5. Java 身份证号码识别系统
  6. opencv实现xld_halcon学习网
  7. python中使用连续关系运算符_解释一下Python中的关系运算符
  8. mysql5.6跳过密码登录_mysql-配置与使用(跳过原始密码登陆)
  9. 苹果内核H5网页漫画小说系统源码+支持对接公众号
  10. UDA/语义分割/ICCV2021:Dual Path Learning for Domain Adaptation of Semantic Segmentation语义分割领域自适应的双路径学习
  11. 【渝粤教育】 国家开放大学2020年春季 1054流通概论 参考试题
  12. DFS.01-寻路问题
  13. 探索GIS+物联网应用场景 MapGIS IoT实时大数据解决方案
  14. python怎样更新requests库-足球运动员的体能训练
  15. Swift 5.1 温故而知新笔记系列之第七天
  16. MS SQL Server 数据库连接字符串详解
  17. 为了中国---我国民用客机深度报道(第三部分下)
  18. Android Studio之高德地图实现定位和3D地图显示
  19. python中查看相对路径_python提取相对路径
  20. 客户关系管理项目——用户登录模块设计

热门文章

  1. Redis缓存读写策略
  2. 琢磨事琢磨人琢磨钱,成大事也!
  3. cesium 矢量图 编辑_openlayers添加、删除矢量图,多边形
  4. 【Java】Leetcode LCP03 机器人大冒险
  5. win 桌面图标小箭头
  6. pyqt5 关闭程序显示提示信息+最小化程序到托盘+隐藏任务栏图标
  7. 移除superView上的subviews
  8. LiveData更新数据报错java.lang.IllegalStateException: Cannot invoke setValue on a background thread
  9. python请输入星期几的第一个_Python 根据星期英文首字母判断星期几
  10. laravel seeder 填充数据