对于while和for一直混在一起使用。For的使用太多以至于忘记while也很重要。
同样作为循环结构,两者的一个重要区别在于是否确定循环次数。
For循环规定了变量的起始和终止以及变化条件,这意味着我们可以确定循环的次数。例如从1到100进行for循环,每次自加1,那么可以确定循环次数为100次。
While循环只规定终止条件,因此不需要确定循环次数。Leetcode中求最后一个单词长度。我们无法得知最后一个字母会出现在何处,但是我们知道循环结束条件是循环项为空格,因此只能使用while循环。
class Solution:
def lengthOfLastWord(self, s: str) -> int:
index = len(s) - 1
while s[index] == ' ':
index = index - 1
word_len = 0
while index >= 0 and s[index] != ' ':
word_len = word_len + 1
index = index - 1
return word_len
另外一个区别是执行条件的判断方式不同。
本文探讨了编程中while和for循环的使用差异,强调了在已知循环次数时for循环的优势,以及在不确定循环次数时while循环的必要性。通过LeetCode的实例,解释了如何利用while循环找到字符串中最后一个单词的长度。文章指出,while循环的终止条件通常基于某个条件,而for循环则规定了循环变量的变化。

3万+

被折叠的 条评论
为什么被折叠?



