跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • Java 中 array 转 set 什么写法比较好?
未分類
10 12 月 2020

Java 中 array 转 set 什么写法比较好?

Java 中 array 转 set 什么写法比较好?

資深大佬 : gzk329 6

Set<Integer> set = Stream.of(Arrays.stream(nums).boxed().parallel().toArray(Integer[]::new)).collect(Collectors.toSet());//nums 为 int 数组 

使用并行流是这样嘛?

Set<Integer> set = new HashSet<>(Arrays.asList(nums)); 或者这种写法的问题在哪儿 set 没有针对 list 的构造函数? 求指教

大佬有話說 (12)

  • 資深大佬 : ztcaoll222

    Set.of(someArray);

  • 資深大佬 : chenset

    haha ..

  • 資深大佬 : weixiaoyun

    guava Sets.newHashSet(nums)

  • 主 資深大佬 : gzk329

    额 做算法题的时候用 不导入别的 就 jdk

  • 主 資深大佬 : gzk329

    /**
    226 * Creates a <i>mutable</i> {@code HashSet} instance containing the given elements. A very thin
    227 * convenience for creating an empty set and then calling {@link Iterators#addAll}.
    228 *
    229 * <p><b>Note:</b> if mutability is not required and the elements are non-null, use {@link
    230 * ImmutableSet#copyOf(Iterator)} instead.
    231 *
    232 * <p><b>Note:</b> if {@code E} is an {@link Enum} type, you should create an {@link EnumSet}
    233 * instead.
    234 *
    235 * <p>Overall, this method is not very useful and will likely be deprecated in the future.
    236 */
    237 public static <E> HashSet<E> newHashSet(Iterator<? extends E> elements) {
    238 HashSet<E> set = newHashSet();
    239 Iterators.addAll(set, elements);
    240 return set;
    241 }

  • 資深大佬 : yazinnnn

    引入 kotlin 库
    java 写法
    ArraysKt.toSet(arr)

    kotlin 写法
    arr.toSet()
    或者
    setOf(*arr)

  • 資深大佬 : xgfan

    算法题里用……
    算法题里就不该用到这种转换。

  • 資深大佬 : zxCoder

    算法题 forforfor 就好了

  • 資深大佬 : cheng6563

    并行装个箱这有啥好并的

  • 主 資深大佬 : gzk329

    @zxCoder
    @xgfan 主要是前天做的题目 本来是直接模拟的 forfor 用了 o(N2)时间复杂度 然后就有 3 个数据量大的测试例子超时
    后来想的是 map 简化 结果还是超时,再后来想的是用 set 先把数组去重,这个 array 转 set 就一直写不好 直接 for 然后 add 进 set 的话肯定超时,后来大概也知道我这个思路是有问题 但是又想把这个思路写出来 就在找直接转的 api,这种做法时间复杂度应该得小于 o(N)

  • 資深大佬 : zxCoder

    @gzk329 算法复杂度不是这样算的吧。。。。如果你 for add 进也超时,那无论用什么 api 转 复杂度也是不对的

  • 主 資深大佬 : gzk329

    @zxCoder 对的啊 就是想通了 所以不找了

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具