【问题标题】:If statement to check if a variable is in an array?if语句检查变量是否在数组中?
【发布时间】:2019-04-10 00:53:02
【问题描述】:

所以我用方法编写了以下程序:inputArray、selectionSort、binarySearch 和 printArray。我目前正在研究主要方法,并且正在努力解决问题。

"编写 main 方法来调用 inputArray、selectionSort 和 printArray 方法。接下来,您的 main 方法应该要求用户输入一个双精度值以用作搜索键,然后调用 binarySearch 方法。最后,main 方法如果密钥在列表中,则应打印出密钥的位置,如果密钥不在列表中,则应打印出适当的消息。”

如何打印二分查找的索引值?

【问题讨论】:

  • 问你面临的确切问题。
  • @RamanShrivastava 我目前正在尝试执行以下操作:“最后,如果密钥在列表中,则主要方法应打印出密钥的位置,如果密钥不在列表中,则应打印适当的消息列表。”
  • 如果找不到密钥,binarySearch 会返回什么?这就是答案。
  • 提示:尝试以int found = binarySearch(array1, key);开头
  • D E B U G。答案就在那里。

标签: java arrays binary-search


【解决方案1】:

需要使用二分查找方法的返回值:

if (binarySearch(array1, key) < 0) {
    // key is not in the array
} else {
    // key is in the array
}

【讨论】:

  • 哇。我绝对应该能够考虑到这一点,哈哈。我的大脑快炸了。现在我坚持打印出关键变量在数组中的位置。我试过System.out.print("The key is located at " + array1[key] + " in the array.");,但它不喜欢那样。我不认为 array1[key] 是合法的。你能给我一个提示吗?
  • @BronsonLane 查看 cricket_007 对您的问题的评论。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-04-08
  • 1970-01-01
  • 1970-01-01
  • 2016-06-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多