舉例:
首先我們來看個例子: 13195的質因數為 5, 7, 13, 29, 其中29就是最大的質因數,現在讓我們來計算600851475143的最大質因素。
from math import sqrt
# 質數判斷
def isprime(n):
for i in range(2, int(sqrt(n))+1):
if n % i == 0:
return false
return true
index = 2
num = 600851475143
maxprime = none
while index <= num:
if isprime(index) and num % index == 0:
num /= index
maxprime = index
index += 1
print (maxprime)
輸出結果為:6857
所以這個600851475143的最大質因素就是:6857
找出乙個陣列中出現次數最大的數
描敘 一大堆資料裡面,數字與數字之間用空格隔開,找出出現次數最多的乙個數字的演算法 includevoid findmosttimesdigit int src int srclen if tempcount maxcount else if tempcount maxcount printf 出現...
數學演算法 求乙個數的質因子
兩種方法,第一種是將所有的素數篩選出來,第二種直接迴圈就行了 第二種更加的高效 第一種方法其實就是先將素數篩選出來然後再計算,第二種是直接計算。第一種的 includeusing namespace std const int max 1e7 7 bool prim max vector ve 素數...
在乙個陣列中找出top K的數
這個基本都是老生常談了,看資料量有多大,建乙個小根堆,或者用快速排序的方法來完成這個題。下面給出快速排序的方法,直接上 了。include include include void quicksort int arr,int low,int high arr i val quicksort arr,...