更改布尔值的范围问题。 if语句在while循环内

问题描述 投票:0回答:1

气泡排序帮助。我正在尝试编写对整数数组进行排序的冒泡排序算法。从逻辑上讲,我相信代码是正确的,但是我在范围上遇到了问题。我的逻辑是:如果发生交换,则该列表未完全排序,因此必须再次对其进行迭代以检查要交换的数字。如果没有发生交换,则对列表进行排序,然后可以退出while循环。问题是swapOccured仅在if语句本地可用,一旦执行在if语句之外,程序将看不到它,并且我得到一个错误。enter image description here

java algorithm sorting scope bubble-sort
1个回答
0
投票

您需要使用默认值在if语句之前定义它。然后只更改它。顺便说一句,您正在定义一个新的isSorted,并使用大写字母I,而不更改原始的isSorted,这将导致isSorted始终为false。

PS:如果您以文本形式提供代码,我也会写修复程序...

© www.soinside.com 2019 - 2024. All rights reserved.