社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

如何提高python代码的时间效率?

Ganesh • 5 年前 • 1584 次点击  

我试图执行的程序有以下问题声明:

程序必须接受n个整数,其中包含从1到n的整数 以任何顺序复制。程序必须打印丢失的 给定整数中从1到n的整数,升序为 输出。

例子:

输入: 5个

2 5 5 1 1年

输出:34

说明:5个整数中缺少整数3和4 2 5 5 11号。因此3和4被打印为输出

我的代码:

def modusoperandi(n, t):
    if str(n) not in t:
        yield n 

n = int(input())
t = tuple(sr for sr in input().split())
for i in range(1,n+1):
    for j in modusoperandi(i,t):
        print(j,end=' ')

但是,我的代码未能通过所有测试用例,因为对于输入量巨大的测试用例执行需要相当长的时间[需要500毫秒以上,这是时间限制]。

我试着用 时间 方法。特别的是,当元组中的元素数量增加时,对于给定的n,执行时间也会增加。我更喜欢元组而不是列表,因为它应该更有效。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/46979
 
1584 次点击  
文章 [ 4 ]  |  最新文章 5 年前