輸出100到200之間的素數是一個常見的問題,這裡將介紹一種偽代碼實現。
一、素數的定義
素數是只能被1和本身整除的整數。比如2、3、5、7、11等都是素數,而4、6、8、9等就不是素數。
判斷一個數是否為素數,可以將其分別除以小於等於其平方根的素數,若均沒有餘數,則該數就是素數。
二、偽代碼實現
prime_list = [] # 存儲素數的列表 for num in range(100, 201): # 選取100到200之間的整數 for i in range(2, int(num ** 0.5) + 1): if num % i == 0: # 若存在能整除的數,則不是素數 break else: # 若不存在能整除的數,則是素數 prime_list.append(num) # 添加到素數列表中 print(prime_list)
以上偽代碼中,首先定義了一個空列表prime_list,用來存儲找到的素數。然後使用for循環遍歷100到200之間的整數,對每個數使用另一個for循環,將其分別除以小於等於其平方根的素數,判斷是否為素數。對於每個素數,都將其添加到prime_list中。最後輸出prime_list即可。
三、時間複雜度分析
以上偽代碼的時間複雜度為O(n√n),其中n為100到200之間的整數的數量。因為在偽代碼中,每個數只需要除以小於等於其平方根的素數,而素數的數量遠遠小於n,所以可以認為時間複雜度近似於O(n)。
原創文章,作者:OXGNF,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/375009.html