LinkLists 兩個鏈表相加

你有兩個由單鏈表表示的數。每個結點代表其中的一位數字。數字的存儲是逆序的, 也就是說個位位於鏈表的表頭。寫一函數使這兩個數相加並返回結果,結果也由鏈表表示。

例子:(3 -> 1 -> 5), (5 -> 9 -> 2)

輸入:8 -> 0 -> 8

 

解法:鏈表倒置,相加進位,再倒置。

LinkedList支持方法


import com.google.common.collect.Lists;
import org.junit.Test;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.LinkedList;

/**
 * Created by zhaoxh on 2017/9/25.
 */
public class TestLinkedList {

    @Test
    public void test(){
        LinkedList list1 = Lists.newLinkedList();
        list1.add(1);
        list1.add(2);
        list1.add(3);
        list1.add(4);

        System.out.println(list1.get(0));
        System.out.println(list1.set(0,11));
        System.out.println(list1.size());
        System.out.println(list1);
        System.out.println(Lists.reverse(list1));
    }

}

輸出:

1
1
4
[11, 2, 3, 4]
[4, 3, 2, 11]

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章