嵌套循环-GOLANG和PYTHON对比
运行示例:i + j + k = 1000 i^2 + j^2 = k^2
GOLANG:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | package main import ( "fmt" "time" ) func main() { kt : = time.Now().UnixNano() / 1e6 for i : = 0 ; i < 1001 ; i + + { for j : = 0 ; j < 1001 ; j + + { for k : = 0 ; k < 1001 ; k + + { if i + j + k = = 1000 && i * i + j * j = = k * k { fmt.Println( "i, j, k: " , i, j, k) } } } } st : = time.Now().UnixNano() / 1e6 fmt.Println(st - kt) fmt.Println( "finish" ) } / / i, j, k: 0 500 500 / / i, j, k: 200 375 425 / / i, j, k: 375 200 425 / / i, j, k: 500 0 500 / / 981 / / finish |
PYTHON: while循环
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | import time kt = int (time.time() * 1000 ) i = 0 while i < 1001 : j = 0 while j < 1001 : k = 0 while k < 1001 : if i + k + j = = 1000 and i * * 2 + j * * 2 = = k * * 2 : print (f "i: {i}; j: {j}; k: {k}" ) k + = 1 j + = 1 i + = 1 st = int (time.time() * 1000 ) print (st - kt) print ( "finish" ) """ i: 0; j: 500; k: 500 i: 200; j: 375; k: 425 i: 375; j: 200; k: 425 i: 500; j: 0; k: 500 154175 finish """ |
PYTHON: for循环
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | import time kt = int (time.time() * 1000 ) for i in range ( 1001 ): for j in range ( 1001 ): for k in range ( 1001 ): if i + k + j = = 1000 and i * * 2 + j * * 2 = = k * * 2 : print (f "i: {i}; j: {j}; k: {k}" ) st = int (time.time() * 1000 ) print (st - kt) print ( "finish" ) """ i: 0; j: 500; k: 500 i: 200; j: 375; k: 425 i: 375; j: 200; k: 425 i: 500; j: 0; k: 500 118876 finish """ |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」