算法面试题-用单向链表表示十进制整数,求两个正整数之和。1234+34=1268
数据结构是单向链表,并且是按照算数进行的。
思路如下
原结果
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相关推荐
- 九章算法面试题72 翻转链表I
九章算法官网-原文网址 http://www.jiuzhang.com/problem/73/ 题目 给一个链表,然后我们要把这个链表进行翻转. 在线测试本题 http://www.lintcode. ...
- 一周刷爆LeetCode,算法da神左神(左程云)耗时100天打造算法与数据结构基础到高级全家桶教程,直击BTAJ等一线大厂必问算法面试题真题详解 笔记
一周刷爆LeetCode,算法大神左神(左程云)耗时100天打造算法与数据结构基础到高级全家桶教程,直击BTAJ等一线大厂必问算法面试题真题详解 笔记 教程与代码地址 P1 出圈了!讲课之外我们来聊聊 ...
- 数据结构经典算法面试题
转自:http://hi.baidu.com/geogre_jsj/blog/item/e4b98fd2aab5aa3611df9b92.html 由于这些题,实在太火了.所以,应广大网友建议要求,在 ...
- 微软的100道算法面试题(终结版)
前言 数据结构与算法的重要性已不言而喻,最近,我整理出十大经典排序算法.五大常用算法总结,今天特意整理出微软面试的100题,若有不足之处,欢迎指正!由于篇幅过长,前30道题目写在上一篇,大家可以进我的 ...
- 2021最新汇总数据结构与算法面试题(准备面试的可以看看)
闲来无事整理了一下数据结构与算法面试题,准备面试的可以看看. 这份面试题汇总除了Java语言的,我还整理了C++和Golang语言的,无论你是做什么开发这份数据结构与算法面试题汇总都可以看,如果你是做 ...
- 200 道算法面试题集锦!Python 实现,含华为、BAT 等校招真题!
点击上方"AI有道",选择"置顶"公众号 重磅干货,第一时间送达 春招临近,无论是要找工作的准毕业生,还是身在职场想要提升自己的程序员,提升自己的算法内功心法. ...
- 66 道前端算法面试题附思路分析助你查漏补缺
大家好,我是漫步. 今天来分享一篇干货,前端关于算法的分析不多,下文列举了66道前端算法面试题,希望对你有所帮助. 作者:Eno_Yao https://segmentfault.com/a/1190 ...
- 力扣高频|算法面试题汇总(七):树
力扣高频|算法面试题汇总(一):开始之前 力扣高频|算法面试题汇总(二):字符串 力扣高频|算法面试题汇总(三):数组 力扣高频|算法面试题汇总(四):堆.栈与队列 力扣高频|算法面试题汇总(五):链 ...
- 【2021最新版】数据结构+算法面试题总结(9+20道题含答案解析)
文章目录 1.栈(stack) 2.队列(queue) 3.链表(Link) 4.散列表(Hash Table) 5.排序二叉树 6. 前缀树 7.红黑树 8.B-TREE 9.位图 算法面试题 1. ...
- 经典算法面试题及答案
经典算法面试题及答案 1. 时针分针重合几次 表面上有60个小格,每小格代表一分钟, 时针每分钟走1/12小格,分针每分钟走1小格,从第一次重合到第二次重合分针比时针多走一圈即60小格,所以 60/ ...
最新文章
- 'htons' was not declared in this scope 解决
- CISCO专用协议CDP
- HDOJ5542-The Battle of Chibi【树状数组,dp】
- 15-[JavaScript]-ECMAScript 1
- Java 身份证号码识别系统
- opencv实现xld_halcon学习网
- python中使用连续关系运算符_解释一下Python中的关系运算符
- mysql5.6跳过密码登录_mysql-配置与使用(跳过原始密码登陆)
- 苹果内核H5网页漫画小说系统源码+支持对接公众号
- UDA/语义分割/ICCV2021:Dual Path Learning for Domain Adaptation of Semantic Segmentation语义分割领域自适应的双路径学习
- 【渝粤教育】 国家开放大学2020年春季 1054流通概论 参考试题
- DFS.01-寻路问题
- 探索GIS+物联网应用场景 MapGIS IoT实时大数据解决方案
- python怎样更新requests库-足球运动员的体能训练
- Swift 5.1 温故而知新笔记系列之第七天
- MS SQL Server 数据库连接字符串详解
- 为了中国---我国民用客机深度报道(第三部分下)
- Android Studio之高德地图实现定位和3D地图显示
- python中查看相对路径_python提取相对路径
- 客户关系管理项目——用户登录模块设计
热门文章
- Redis缓存读写策略
- 琢磨事琢磨人琢磨钱,成大事也!
- cesium 矢量图 编辑_openlayers添加、删除矢量图,多边形
- 【Java】Leetcode LCP03 机器人大冒险
- win 桌面图标小箭头
- pyqt5 关闭程序显示提示信息+最小化程序到托盘+隐藏任务栏图标
- 移除superView上的subviews
- LiveData更新数据报错java.lang.IllegalStateException: Cannot invoke setValue on a background thread
- python请输入星期几的第一个_Python 根据星期英文首字母判断星期几
- laravel seeder 填充数据