Tag: 排序

PriorityQueue.toString错误的元素顺序

我试图在java中创建一个优先级最低的节点队列。 但是,我的比较器不工作,输出非常奇怪。 我相信我需要改变我的比较器,但我不知道如何改变它。 这是我的代码: public class HuffmanComparator implements Comparator { public int compare(TreeNodeHuffman p1, TreeNodeHuffman p2) { if (p1.frequency p2.frequency) return 1; return 0; } } public class TreeNodeHuffman { public static void main(String[] args) { HuffmanComparator compare = new HuffmanComparator(); TreeNodeHuffman e = new TreeNodeHuffman(‘e’, 12702); TreeNodeHuffman t = new TreeNodeHuffman(‘t’, 9056); TreeNodeHuffman a […]

Java,找到两个数组的交集

我已经在这上面阅读了一些其他堆栈溢出线程: 在java中找到两个多重集的交集 如何将两个数组之间的交集作为新数组? public static int[] intersection (int [] x, int numELementsInX, int [] y, int numElementsInY) { 我试图检查两个数组以及它们的元素数(numElementsInX和numElementsInY),并返回一个新数组,其中包含数组x和y的公共值。 他们的交集。 Example,if x is{1,3,5,7,9}and y is{9,3,9,4} then intersection(x, 5, y, 4} should return {3, 9} or {9, 3} 我读过我需要使用LCS算法。 谁能给我一个如何做到这一点的例子? 数组中的数组和值都被初始化并在另一个方法中生成,然后传递到交集中。 任何帮助/澄清表示赞赏。 编辑代码 for (int i=0; i<numElementsInX; i++){ for (int j=0; j<numElementsInY; j++){ if (x[j]==x[i]) { […]