算法练习-第六天(判断一个链表是否为回文结构)
Posted 旷世奇才李先生
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了算法练习-第六天(判断一个链表是否为回文结构)相关的知识,希望对你有一定的参考价值。
不要再因为那些你不能控制的事情有压力了,要专注于你能控制的事情
文章持续更新,可以微信搜索【小奇JAVA面试】第一时间阅读,回复【资料】获取福利,回复【项目】获取项目源码,回复【简历模板】获取简历模板,回复【学习路线图】获取学习路线图。
👏👏👏
哈喽!大家好,首先将我的刷题神器分享出来,点此注册
😍😍😍
文章目录
前言
对于程序员来说算法属于基本功,掌握了算法就能够写出更高效的代码,所以一个好的练习算法的网站尤为重要,现在分享一下我经常刷算法题的网站,上面不仅有算法题,还有其他类型的题,赶紧刷起来吧,算法神器
一、判断一个链表是否为回文结构
二、题解
import java.util.*;
public class Solution
public boolean isPail (ListNode head)
ArrayList<Integer> nums = new ArrayList();
//将链表元素取出一次放入数组
while (head != null)
nums.add(head.val);
head = head.next;
ArrayList<Integer> temp = new ArrayList();
temp = (ArrayList<Integer>) nums.clone();
//准备一个数组承接翻转之后的数组
Collections.reverse(temp);
for (int i = 0; i < nums.size(); i++)
int x = nums.get(i);
int y = temp.get(i);
//正向遍历与反向遍历相同
if (x != y)
return false;
return true;
三、分析
1、解决方式(数组复制反转法)
数组复制反转法
2、测试提交
代码写完了就需要先自测一下,这个时候我们点击自测运行看一看能不能测试通过。
这里我们可以看到自测成功了,那我们就点击保存并提交来提交此题。
提交答案后会显示我们此题的运行时间以及占用内存,并且判断我们这两项超过了其他百分之多少的人,我们还可以点击进入下一题来接着进行刷题,这样会越刷越上瘾的。
四、总结
通过这个刷题神器刷题是真的过瘾,通过画图的方式将每一行代码分析出来就不会觉得代码难以理解了,所以赶紧刷起来吧,点此注册
可以微信搜索【小奇JAVA面试】第一时间阅读,回复【资料】获取福利,回复【项目】获取项目源码,回复【简历模板】获取简历模板,回复【学习路线图】获取学习路线图。
以上是关于算法练习-第六天(判断一个链表是否为回文结构)的主要内容,如果未能解决你的问题,请参考以下文章