博客
关于我
分割数组为连续子序列
阅读量:572 次
发布时间:2019-03-10

本文共 2393 字,大约阅读时间需要 7 分钟。

???????????????????????????????????????????????????????????3?????????????????????????????????????????????????????????

????

  • ?????????????????????????????????????????????????????????
  • ????????????????????????
  • ??????????????????????????????????????????????????????????????????
  • ???????????????????????????????????????????????
  • ???????????????????????????????????????????true?????????
  • ????

    import java.util.ArrayList;import java.util.Collections;import java.util.List;public class LianshuZixulie {    public boolean isPossible(int[] nums) {        if (nums.length < 3) {            return false;        }        List
    > result = new ArrayList<>(); result.add(new ArrayList<>()); result.get(0).add(nums[0]); for (int i = 1; i < nums.length; i++) { boolean added = false; for (int j = 0; j < result.size(); j++) { List
    curr = result.get(j); int last = curr.get(curr.size() - 1); if (last + 1 == nums[i]) { curr.add(nums[i]); added = true; break; } } if (!added) { List
    temp = new ArrayList<>(); temp.add(nums[i]); int pos = findInsertPosition(result); result.add(pos, temp); result = sortAndAdjust(result); } for (List
    list : result) { if (list.size() >= 3) { return true; } } } return false; } private int findInsertPosition(List
    > result) { int pos = result.size(); for (int j = 0; j < result.size(); j++) { List
    curr = result.get(j); if (curr.size() <= new ArrayList<>(temp).size()) { pos = j; } } return pos; } private List
    > sortAndAdjust(List
    > result) { Collections.sort(result, (a, b) -> Integer.compare(a.size(), b.size())); return result; } public static void main(String[] args) { int[] input = {1, 2, 3, 3, 4, 4, 5, 5}; System.out.println(new LianshuZixulie().isPossible(input)); }}

    ????

  • ???????????????????????????
  • ????????????????????????
  • ??????????????????????????????????????????????????????
  • ???????????????????????????????????????????????
  • ???????????????????????????????????????????true?????????
  • ??????????????????????????????????????????3?

    转载地址:http://ywwvz.baihongyu.com/

    你可能感兴趣的文章
    Objective-C实现有限集上给定关系的自反关系矩阵和对称闭包关系矩阵(附完整源码)
    查看>>
    Objective-C实现朴素贝叶斯算法(附完整源码)
    查看>>
    Objective-C实现杰卡德距离算法(附完整源码)
    查看>>
    Objective-C实现极值距离算法(附完整源码)
    查看>>
    Objective-C实现构造n以内的素数表(附完整源码)
    查看>>
    Objective-C实现某文件夹下文件重命名(附完整源码)
    查看>>
    Objective-C实现查找second Largest Element第二大元素算法(附完整源码)
    查看>>
    Objective-C实现查找整数数组中给定的最小数字算法(附完整源码)
    查看>>
    Objective-C实现查找给定节点数的树中可能的二叉搜索树的数量树算法(附完整源码)
    查看>>
    Objective-C实现查找链表的中间元素算法(附完整源码)
    查看>>
    Objective-C实现根据cpu和磁盘序列号生成注册码( 附完整源码)
    查看>>
    Objective-C实现格雷码序列算法(附完整源码)
    查看>>
    Objective-C实现桥接模式(附完整源码)
    查看>>
    Objective-C实现检查一个数字是否可以被另一个数字整除算法(附完整源码)
    查看>>
    Objective-C实现检查一年是否是闰年算法 (附完整源码)
    查看>>
    Objective-C实现检查三个点在 3D 中是否共线算法(附完整源码)
    查看>>
    Objective-C实现检查字符串是否包含字母表中所有字母的算法(附完整源码)
    查看>>
    Objective-C实现检查字符是否为字母算法(附完整源码)
    查看>>
    Objective-C实现检查数字是否为偶数算法(附完整源码)
    查看>>
    Objective-C实现检查数字是否为奇数算法(附完整源码)
    查看>>