gpt4 book ai didi

com.github.andrewoma.dexx.collection.internal.redblack.Zipper类的使用及代码示例

转载 作者:知者 更新时间:2024-03-18 15:13:31 26 4
gpt4 key购买 nike

本文整理了Java中com.github.andrewoma.dexx.collection.internal.redblack.Zipper类的一些代码示例,展示了Zipper类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Zipper类的具体详情如下:
包路径:com.github.andrewoma.dexx.collection.internal.redblack.Zipper
类名称:Zipper

Zipper介绍

暂无

代码示例

代码示例来源:origin: com.github.andrewoma.dexx/dexx-collections

@SuppressWarnings("unchecked")
private Zipper<K, V> unzipBoth(Tree<K, V> left, Tree<K, V> right, List<Tree<K, V>> leftZipper, List<Tree<K, V>> rightZipper, int smallerDepth) {
  if (isBlackTree(left) && isBlackTree(right)) {
    return unzipBoth(left.getRight(), right.getLeft(), cons(left, leftZipper), cons(right, rightZipper), smallerDepth + 1);
  } else if (isRedTree(left) && isRedTree(right)) {
    return unzipBoth(left.getRight(), right.getLeft(), cons(left, leftZipper), cons(right, rightZipper), smallerDepth);
  } else if (isRedTree(right)) {
    return unzipBoth(left, right.getLeft(), leftZipper, cons(right, rightZipper), smallerDepth);
  } else if (isRedTree(left)) {
    return unzipBoth(left.getRight(), right, cons(left, leftZipper), rightZipper, smallerDepth);
  } else if ((left == null) && (right == null)) {
    return new Zipper<K, V>((List<Tree<K, V>>) Collections.EMPTY_LIST, true, false, smallerDepth);
  } else if ((left == null) && isBlackTree(right)) {
    return new Zipper<K, V>(unzip(cons(right, rightZipper), true), false, true, smallerDepth);
  } else if (isBlackTree(left) && (right == null)) {
    return new Zipper<K, V>(unzip(cons(left, leftZipper), false), false, false, smallerDepth);
  } else {
    throw new RuntimeException("unmatched trees in unzip: " + left + ", " + right);
  }
}

代码示例来源:origin: andrewoma/dexx

@SuppressWarnings("unchecked")
private Zipper<K, V> unzipBoth(Tree<K, V> left, Tree<K, V> right, List<Tree<K, V>> leftZipper, List<Tree<K, V>> rightZipper, int smallerDepth) {
  if (isBlackTree(left) && isBlackTree(right)) {
    return unzipBoth(left.getRight(), right.getLeft(), cons(left, leftZipper), cons(right, rightZipper), smallerDepth + 1);
  } else if (isRedTree(left) && isRedTree(right)) {
    return unzipBoth(left.getRight(), right.getLeft(), cons(left, leftZipper), cons(right, rightZipper), smallerDepth);
  } else if (isRedTree(right)) {
    return unzipBoth(left, right.getLeft(), leftZipper, cons(right, rightZipper), smallerDepth);
  } else if (isRedTree(left)) {
    return unzipBoth(left.getRight(), right, cons(left, leftZipper), rightZipper, smallerDepth);
  } else if ((left == null) && (right == null)) {
    return new Zipper<K, V>((List<Tree<K, V>>) Collections.EMPTY_LIST, true, false, smallerDepth);
  } else if ((left == null) && isBlackTree(right)) {
    return new Zipper<K, V>(unzip(cons(right, rightZipper), true), false, true, smallerDepth);
  } else if (isBlackTree(left) && (right == null)) {
    return new Zipper<K, V>(unzip(cons(left, leftZipper), false), false, false, smallerDepth);
  } else {
    throw new RuntimeException("unmatched trees in unzip: " + left + ", " + right);
  }
}

代码示例来源:origin: com.github.andrewoma.dexx/collection

@SuppressWarnings("unchecked")
private Zipper<K, V> unzipBoth(Tree<K, V> left, Tree<K, V> right, List<Tree<K, V>> leftZipper, List<Tree<K, V>> rightZipper, int smallerDepth) {
  if (isBlackTree(left) && isBlackTree(right)) {
    return unzipBoth(left.getRight(), right.getLeft(), cons(left, leftZipper), cons(right, rightZipper), smallerDepth + 1);
  } else if (isRedTree(left) && isRedTree(right)) {
    return unzipBoth(left.getRight(), right.getLeft(), cons(left, leftZipper), cons(right, rightZipper), smallerDepth);
  } else if (isRedTree(right)) {
    return unzipBoth(left, right.getLeft(), leftZipper, cons(right, rightZipper), smallerDepth);
  } else if (isRedTree(left)) {
    return unzipBoth(left.getRight(), right, cons(left, leftZipper), rightZipper, smallerDepth);
  } else if ((left == null) && (right == null)) {
    return new Zipper<K, V>((List<Tree<K, V>>) Collections.EMPTY_LIST, true, false, smallerDepth);
  } else if ((left == null) && isBlackTree(right)) {
    return new Zipper<K, V>(unzip(cons(right, rightZipper), true), false, true, smallerDepth);
  } else if (isBlackTree(left) && (right == null)) {
    return new Zipper<K, V>(unzip(cons(left, leftZipper), false), false, false, smallerDepth);
  } else {
    throw new RuntimeException("unmatched trees in unzip: " + left + ", " + right);
  }
}

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com