【问题标题】:generate all possible strings with 0 and 1 (given length)用 0 和 1 生成所有可能的字符串(给定长度)
【发布时间】:2014-08-20 08:27:09
【问题描述】:

我需要一个 java 函数,它给出一个(int 长度)作为输入,并打印所有可能的带有 '0' 和 '1' 字母的字符串。 这不是排列,因为每个可能的字符串中 0 和 1 的数量不同 示例:长度=3

  • 111
  • 110
  • 100
  • 000
  • 001
  • 011
  • 010
  • 101

【问题讨论】:

  • 向我们展示您到目前为止所做的尝试。
  • 到目前为止你的代码在哪里?
  • 000转成二进制数到111做一个循环。
  • 我不知道以一种简单的方式做到这一点......
  • 您好@user3084088,欢迎来到 Stack Overflow。正如您所收集的那样,反对票的原因主要是由于缺少任何代码。不过,这不仅仅是“我不会为你做你的工作”的原因。如果它为您完成,您将一无所获。我是从第一手经验说的。只有通过尝试、编写一些代码、阅读一些内容,你才能破解它,并且你会理解它。给你一个完整的答案会让你失去成就感,更重要的是让你失去学习。尝试一个简单的循环打印一些东西,然后修改它,并使用笔和纸!

标签: java string


【解决方案1】:

您可以尝试使用2^NN 可以作为长度)。然后将0-2^N 转换为二进制并使用正确的二进制格式。你可以拥有你想要的东西。

第一步-获取2^N

double twosPow = Math.pow(2, occurrence);

现在从0 迭代到twosPow。并将数字转换为二进制

第二步 - 如何将 int 转换为二进制?

Integer.toBinaryString(k); // 0<=k<  twosPow

第三步格式化二进制

String.format("%" + length + "s",binary).replace(" ", "0") 

【讨论】:

    猜你喜欢
    • 2012-02-28
    • 1970-01-01
    • 2019-05-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-09
    • 2019-05-10
    相关资源
    最近更新 更多