【问题标题】:Print all ordered 3 tuples打印所有有序的 3 个元组
【发布时间】:2014-06-19 00:56:19
【问题描述】:

我想知道是否有人可以帮助我解决这个问题...

"打印所有有序的3个元组(i,j,k) i in 0..(n-1), j in 0..(n-1), k in 0..(n-1), in字典顺序,每行一个 3 元组。字典顺序(想想字典中的单词),顺序序列:两个序列中的第一个 UNEQUAL 元素确定顺序,例如:(0,1,5,3)

格式:open-paren number comma number comma number close-paren。使用提供的 print3Tuple() 方法进行打印,这样我们都以相同的格式打印。 (想一想:您将如何更改代码以打印 4 元组、5 元组、k 元组?) 示例:对于 n=2,您的输出应该是"

所以我有两种方法,但我被困在我的循环中......

public void print3Tuple(int a, int b, int c) {
    System.out.println("(" +a+ "," +b+ "," +c+ ")" );
}

然后是我正在工作的那个

public void print3Tuples(int n) {
    // Replace this body with your solution
    for (int i = 0; i < n; i++) {
        for (int j = i; j < n; j++) {
            for (int k = j; k < n; k++) {
                print3Tuple(i, j, k);
            }
        }
    }

打印这个 (0,0,0) (0,0,1) (0,1,1) (1,1,1)

我需要这个

(0,0,0) (0,0,1) (0,1,0) (0,1,1) (1,0,0) (1,0,1) (1,1,0) (1,1,1)

我被困住了,任何帮助将不胜感激。

【问题讨论】:

  • 请告诉我们您的问题的详细信息。你到底是怎么“卡住”的?
  • 我不知道我的循环出了什么问题,或者我应该如何修复它们以让它们打印出来.. (0,0,0) (0,0,1) (0, 1,0) (0,1,1) (1,0,0) (1,0,1) (1,1,0) (1,1,1)
  • @HovercraftFullOfEels

标签: java arrays for-loop


【解决方案1】:

将循环变量jk的初始值改为0

public static void print3Tuples(int n) {
    // Replace this body with your solution
    for (int i = 0; i < n; i++) {
        for (int j = 0; j < n; j++) {
            for (int k = 0; k < n; k++) {
                print3Tuple(i, j, k);
            }
        }
    }
}

【讨论】:

    猜你喜欢
    • 2021-10-01
    • 2022-01-19
    • 2013-05-06
    • 1970-01-01
    • 2023-03-09
    • 2021-11-29
    • 2021-06-06
    • 2021-04-07
    • 2017-08-22
    相关资源
    最近更新 更多