Tag: 数组

字典最小排列使得所有相邻字母都是不同的

这是一个额外的学校任务,我们还没有接受任何教学,我不是在寻找完整的代码,但是一些提示将会非常酷。 我回到家时会发布到目前为止我用Java做的事情,但这里已经有了我已经做过的事情。 因此,我们必须进行排序算法,例如将“AAABBB”排序到ABABAB。 最大输入大小为10 ^ 6,所有这些都必须在1秒内完成。 如果有多个答案,则按字母顺序排列的第一个答案是正确答案。 我开始测试不同的算法,甚至在没有字母顺序要求的情况下对它们进行排序,只是为了看看事情是如何运作的。 第一版: 将ascii代码保存到Integer数组中,其中index是ascii代码,值是char数组中该字符出现的数量。 然后我选择了2个最高的数字,并开始将它们互相垃圾邮件发送到新的字符数组,直到某个数字更高,然后我换了它。 它运作良好,但当然订单不对。 第二版: 遵循相同的想法,但停止选择最常出现的数字,并按照它们在我的数组中的顺序选择索引。 运作良好,直到输入像CBAYYY。 算法将其分类为ABCYYY而不是AYBYCY。 当然,我可以尝试为那些Y找到一些免费的位置,但在那时它开始花费太长时间。

为什么打印Java数组显示内存位置

int[] answer= new int[map.size()]; HashMap map = new HashMap(); for (int j=0; j<answer.length;j++){ int x=map.get(keys.get(j)); answer[j]=x; } return answer 当我在循环中使用System.out.println(x)打印x ,我得到1, 2, 3值但是当我返回答案并打印出来时,我得到[I@9826ac5 。 知道为什么吗?

在java中展平嵌套数组

我想压扁嵌套数组,如: [[[1],2],[3]],4] -> [1,2,3,4] 在java中手动我找不到线索! :S 我尝试过手动java脚本指南,但它没有得到解决方案

扫描程序类跳过空格

我使用嵌套的Scanner循环从字符串行(从文本文件)中提取数字,如下所示: String str = testString; Scanner scanner = new Scanner(str); while (scanner.hasNext()) { String token = scanner.next(); // Here each token will be used } 问题是这段代码会跳过所有空格” ” ,但我也需要使用那些“空格”。 那么Scanner可以返回空间还是我需要使用别的东西? 我的文本文件可能包含以下内容: 0 011 abc d2d sdwq sda 那些空白行每个包含1 ” ” ,那些” “是我需要返回的。

从字符串数组中删除特定字符串

我有一个像这样的数组: String n[] = {“google”,”microsoft”,”apple”}; 我想要做的是删除“苹果”。 我的问题是非常基本的,然而,我搜索了网站,我发现java并不真正支持数组中的删除function。我也听说过使用Java Utils,因为删除项目非常简单….我试图在谷歌上找到Java Utils,但几乎所有的链接都已经死了。 所以最后……有没有办法从字符串数组中删除一个字符串? 即使我使用ArrayList,我也找不到生成随机项的方法! 例如:在普通数组中,我生成一个这样的字符串: String r = myAL[rgenerator.nextInt(myAL.length)]; 在arraylist它不起作用….也许你知道一个解决方案……

如何在Java中存储由方法返回的数组

我想将方法​​返回的数组存储到另一个数组中。 我怎样才能做到这一点? public int[] method(){ int z[] = {1,2,3,5}; return z; } 当我调用此方法时,如何将返回的数组(z)存储到另一个数组中?

制作一个非常大的Java数组

我试图找到Pólya猜想的一个反例,它将在9亿的某个地方。 我正在使用一种非常有效的算法,甚至不需要任何因式分解(类似于Eratosthenes的Sieve,但信息更多。因此,需要大量的整数。 该程序是高效和正确的,但需要一个arrays,直到想要检查的xi(它检查来自(2,x)的所有数字)。 所以,如果反例是9亿,我需要一个同样大的数组。 Java不会允许我超过2000万。 有什么我可以做的让一个大的数组?

Java:检查数组的相等性(顺序无关紧要)

我有两个String数组,让我们说: String[] s1 = {“a”,”b”,”c”} String[] s2 = {“c”,”a”,”b”} //这些数组应该相等 我想以“最干净”的方式检查他们的平等。 我尝试使用Arrays.equals(s1,s2)但我得到了一个错误的答案。 我想这个方法关心元素的顺序,我不希望这一点很重要。 你能告诉我怎样才能以一种好的方式做到这一点?

如何操作数组。 找到平均值。 初学者Java

我有一个家庭作业,我想知道是否有人可以帮助我,因为我不熟悉Java和编程,而且我遇到了问题。 问题是: 第一种方法查找整数数组的元素的平均值: public double average(int[] data) 也就是说,给定一个整数数组,数据,计算其元素的平均值是否返回平均值。 例如,{1,3,2,5,8}的平均值为3.8。 这是我到目前为止所做的: public double average(int[] data) { int sum = 0; while(int i=0; i < data.length; i++) sum = sum + data[i]; double average = sum / data.length;; System.out.println("Average value of array element is " " + average); } 在编译它时,我在int i=0部分得到一条错误消息,说’.class expected’。 任何帮助,将不胜感激。

创建ArrayList 元素的数组

我想创建一个包含ArrayList 元素的数组。 我试过了 ArrayList name[] = new ArrayList()[]; 但这似乎不起作用。