LeetCode554 Brick Wall 独立完成第一道中等难度hashtable题 本地IDE运行 数组输入 时间 有待优化

package leetCode;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class LeetCode554 {
public static void main(String[] args) {
    List list1 = new ArrayList<>();
    list1.add(1);
    list1.add(2);
    list1.add(2);
    list1.add(1);

    List list2 = new ArrayList<>();
    list2.add(3);
    list2.add(1);
    list2.add(2);

    List list3 = new ArrayList<>();
    list3.add(1);
    list3.add(3);
    list3.add(2);

    List list4 = new ArrayList<>();
    list4.add(2);
    list4.add(4);
    List list5 = new ArrayList<>();
    list5.add(3);
    list5.add(1);
    list5.add(2);
    List list6 = new ArrayList<>();
    list6.add(1);
    list6.add(3);
    list6.add(1);
    list6.add(1);

    List> list = new ArrayList>();
    list.add(list1);
    list.add(list2);
    list.add(list3);
    list.add(list4);
    list.add(list5);
    list.add(list6);
    System.out.println(list);

    LeetCode554 leet554 = new LeetCode554();
    Solution solution = leet554.new Solution();
    int i = solution.leastBricks(list);
    System.out.println(i);


}

class Solution {

    public int leastBricks(List> wall) {
        Map map = new HashMap<>();
        List listsum = new ArrayList<>();
        int count = 0;
        for (int x = 0; x < wall.size(); x++) {
            if (wall.get(x).size() == 1)
                count++;
        }
        if (count == wall.size())
            return count;


        for (int i = 0; i < wall.size(); i++) {
            int sum = 0;
            List list = wall.get(i);
            for (int j = 0; j < list.size() - 1; j++) {
                sum = sum + list.get(j);
                Integer value1 = map.put(sum, map.getOrDefault(sum, 0) + 1);
                listsum.add(sum);
            }

        }
        int m = 0;
        int n = 0;

        for (int i = 1; i < listsum.size(); i++) {
            if (m < map.get(listsum.get(i))) {

                m = map.get(listsum.get(i));
            }

        }
        System.out.println(m + "\t555");
        n = wall.size() - m;


        return n;
    }
}}

LeetCode554 Brick Wall 独立完成第一道中等难度hashtable题 本地IDE运行 数组输入 时间 有待优化_第1张图片

LeetCode554 Brick Wall 独立完成第一道中等难度hashtable题 本地IDE运行 数组输入 时间 有待优化_第2张图片

你可能感兴趣的:(LeetCode554 Brick Wall 独立完成第一道中等难度hashtable题 本地IDE运行 数组输入 时间 有待优化)