首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

python——循环(for循环、while循环)及练习

for 循环使用的语法:  “”" for 变量 in range(10): 循环需要执行的代码 else: 循环结束时,需要执行的代码 “”"  for i in range(5):     print...(0,11,2)        ##取出偶数 [0, 2, 4, 6, 8, 10] >>> 2、练习:  (1)分别求1~100内偶数之和  sum = 0 for i in range(2,101,2...):     sum += i print(sum) (2)求1~100之间所有奇数之和  sum1 = 0 for i in range(1,101,2):     sum1 += i print(sum1...('%d的阶乘为:%d' %(num,res)) (4)有1,2,3,4四个数字,求这四个数字能生成多少个互不相同且无重复数字的三位数  sum = 0 for i in (1,2,3,4):    ...= k:                                         sum += 1 print('共有%d种组合' %sum) (5)有1,2,3,4四个数字,求这四个数字能生成多少个互不相同且无重复数字的三位数

3.9K30

【数据结构与算法】【小白也能学的数据结构与算法】递归 分治 迭代 动态规划 无从下手?一文通!!!

通过调用自身来计算阶乘,n等于01时,递归终止并返回1作为结果。...通过使用一个数组dp来保存中间结果,避免重复计算。在递归结束后,我们使用free函数释放了动态分配的内存,以避免内存泄漏。 性能优化方面,我们使用了动态规划来避免重复计算,从而提高了运行效率。...= {1, 2, 3, 4, 5}; int n = sizeof(arr) / sizeof(arr[0]); int divideSum = sum(arr, 0, n - 1)...动态规划的优势包括: 避免重复计算:动态规划使用表格或数组来保存子问题的解,避免重复计算,提高了计算效率。 自底向上的求解方式:动态规划通常使用迭代的方式自底向上地求解子问题,而不是通过递归调用。...通过动态规划的方式,我们使用迭代的方式自底向上地计算子问题的解并保存在数组中,避免重复计算。而递归的方式则通过不断调用自身来解决较小实例的问题。

8310

一天一大 leet(三数之和)难度:中等 DAY-12

注意 答案中不可以包含重复的三元组 示例 给定数组 nums = [-1, 0, 1, 2, -1, -4], 满足要求的三元组集合为: [ [-1, 0, 1], [-1, -1, 2] ]...第三个数从最后一个数依次向前查找 第二个数的指针大于最后一个数的指针时终止循环 数组中存在重复的数组时,按照上面的逻辑会有重复的答案出现 初始化一个 map 去满足条件的任何两个数组合作为 map...- L++ R-- } else if (sum > 0) { R-- } else { L++ } } lastNum...内层循环,双指针去寻找满足三数和等于 0 的项 因为不能有重复的解,为了简化操作,我们先对数组预排序,则我们判断一个元素是否重复,只需看它和它之前位置的元素是否相等即可 双指针的移动时,避免出现重复解...得到一个解后,需要左右指针向“内”移动,为了避免指向重复的元素 左指针要在 left < right 的前提下,一直向右移动到不重复的元素上 右指针要在 left < right 的前提下,一直向左移动到不重复的元素上

39230

数据库事务隔离级别

隔离级别设置为Read uncommitted 时,就可能出现脏读,如何避免脏读,请看下一个隔离级别。...如何解决不可重复读这一问题,请看下一个隔离级别。 Repeatable read 重复隔离级别设置为Repeatable read 时,可以避免不可重复读。...二、脏读、幻读、不可重复1.脏读: 脏读就是指一个事务正在访问数据,并且对数据进行了修改,而这种修改还没有提交到数据库中,这时,另外一个事务也访问这个数据,然后使用了这个数据。...2.不可重复读: 是指在一个事务内,多次读同一数据。在这个事务还没有结束时,另外一个事务也访问该同一数据。...编辑人员第二次读取文档时,文档已更改。原始读取不可重复。如果只有在作者全部完成编写后编辑人员才可以读取文档,则可以避免该问题。

26810

数据结构 | 每日一练(97)

有递归算法如下: FUNCTION sum (n:integer):intger; BEGIN IF n=0 THEN sum:=0 ELSE BEGIN read(x);sum:=sum(n-1)+x...END; END; 设初值 n=4,读入 x=4,9,6,2 问: (1) 若 x 为局部变量时;该函数递归结束后返回调用程序的 sum=?...并画出在递归过程中栈状态的变化过程; (2) 若 x 为全程变量递归结束时返回调用程序的 sum=? 正确答案 PS:||代表注释 1、(1sum=21。...x为局部变量时,每次递归调用,都要给局部变量分配存储单元,故x数值4,9,6和2均保留,其递归过程示意图如下: (2) sum=8,x为全局变量时,在程序的整个执行期间,x只占一个存储单元,先后读入的...递归调用结束,逐层返回时sum:=sum(n-1)+x表达式中,x就是2,所以结果为sum=8。

6283129

LeetCode Weekly Contest 47解题思路

思路: 此题其实很简单,因为k一定比n小,而我们知道,对于1toN的整数来说,最大的gap为n-1,所以给定一个k时,一定优先满足k的gap,再满足k-1的gap,直到k=0。...因此为了避免上述情况的发生,优先满足k,再k′k'。 那么,从哪个数开始构建数组呢?...从a=1a = 1,因为a=2,k=n−1a = 2, k = n - 1的情况出现时,会有2+n−1=n+12 + n - 1 = n + 1,也属于非法状态。...所以有了从1开始,先加k,接着减(k - 1),直到k=0k = 0。 那么如何保证没有被安排的元素是否会出现新的gap?...哈哈,其实也很好理解,因为在构造时,我们的策略是一加一减,把一加一减看成一个整体,两次操作,末尾元素+1,那么迭代结束时,末尾元素为:1+(k+1)/2{1 + (k + 1) / 2},下一个被安排的元素为

36730

JavaScript基础-循环结构:for, while, do-while

本文将深入探讨这三种循环的使用方法、常见问题及易错点,并通过实例代码展示如何有效避免这些陷阱。 一、循环结构概览 1. for循环 适用于已知循环次数的情况,结构为for(初始化; 条件; 更新)。...2. while循环 给定条件为真时重复执行代码块,结构为while(条件) { 循环体 }。...二、常见问题与易错点 易错点1:无限循环 问题:忘记更新循环变量或设置错误的退出条件,导致循环永远无法结束。 避免方法:确保循环变量在每次迭代后都有所改变,并仔细检查循环条件逻辑。...易错点2:逻辑错误导致的早期退出或不退出 问题:条件判断逻辑错误,可能导致循环提前结束或不应结束时结束。 避免方法:清晰定义循环的终止条件,并通过注释或代码审查确保逻辑正确。...三、代码示例与实践 for循环示例:遍历数组 let numbers = [1, 2, 3, 4, 5]; for(let i = 0; i < numbers.length; i++) { console.log

9410

3 C语言 流程控制 循环 跳转

判断条件为true时,if后面{}中的执行语句1会被执行。判断条件为false时,else后面{}中的执行语句2会被执行。if…else语句的执行流程如图3-6所示。 ?...3.4 循环结构语句 在实际生活中经常会将同一件事情重复做很多次,比如在走路时,会重复使用左右脚,打乒乓球时,会重复挥拍的动作等。同样在C语言中,也经常需要重复执行同一代码块,这时就需要使用循环语句。...它出现在循环语句中,作用是跳出当前循环语句,执行后面的代码。接下来通过一个具体的案例来演示break语句如何跳出当前循环,如例3-11所示。...i的值为奇数时,sum和i进行累加,最终得到1~100之间所有奇数的和,打印“sum= 2500”。...)  {     y++; } else {     y--; } printf("y=%d",y); 上面一段程序运行结束时,变量y的值为下列哪一项?

2K10
领券