前言
今天在力扣上刷每日一题的时候突发奇想,如果在力扣上已经刷过一段时间题的人都知道,当遇到链表和树的问题的时候,需要用到官方提供的ListNode和TreeNode。第一个问题是我们本地编译器上没有这个结构需要自己定义,我个人原先是通过静态内部类操作的;第二个问题是代码提交后,对于像我这样的菜鸡而言,总会有几个例子不过,然后就需要把测试用例还原到编译器里(或者硬生生的用脑袋想,一般想不出然后乖乖本地创建一个链表/树的结构,然后本地debug一下)。
所以就想到干脆写个工具类,能够直接将数组转换为链表或树,这样就可以直接从官网上复制下来然后操作了。
正文
链表 ListNode.java:
package com.ssm.main;
public class ListNode {
int val;
ListNode next;
ListNode (int val) {
this.val = val;
}
/**
* 按照数组的输出形式输出
*/
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
ListNode pointer = this;
while (pointer != null){
sb.append(pointer.val).append(",");
pointer = pointer.next;
}
return sb.substring(