摘要:迭代法復雜度時間空間思路技巧在于,每個數會產生一個。為什么呢試想,前個數中有一個一個,相乘有一個,后個數中有一個,又有一個。以此類推,每個數會有一個。代碼階乘中有多少,結果就有多少個
Factorial Trailing Zeroes
迭代法 復雜度Given an integer n, return the number of trailing zeroes in n!.
Note: Your solution should be in logarithmic time complexity.
時間 O(logN) 空間 O(k^2)
思路技巧在于,每5個數會產生一個0。為什么呢?試想1*2*3*4*5*6*7*8*9*10*11,前5個數中有一個2一個5,相乘有一個0,后5個數中有一個10,又有一個0。以此類推,每5個數會有一個0。
代碼public class Solution { public int trailingZeroes(int n) { int sum = 0; while(n > 0){ // 階乘中有多少5,結果就有多少個0 sum += n / 5; n /= 5; } return sum; } }
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/64595.html
摘要:給定一個數組,編寫一個函數將所有移動到數組的末尾,同時保持非零元素的相對順序。盡量減少操作次數。換個思路,把非數字前移,不去管數字。這樣遍歷完之后,數組索引從到之間的數值即為所求得保持非零元素的相對順序,而之后的數值只需要全部賦值即可。 給定一個數組 nums,編寫一個函數將所有 0 移動到數組的末尾,同時保持非零元素的相對順序。 Given an array nums, write ...
摘要:給定一個數組,編寫一個函數將所有移動到數組的末尾,同時保持非零元素的相對順序。盡量減少操作次數。換個思路,把非數字前移,不去管數字。這樣遍歷完之后,數組索引從到之間的數值即為所求得保持非零元素的相對順序,而之后的數值只需要全部賦值即可。 給定一個數組 nums,編寫一個函數將所有 0 移動到數組的末尾,同時保持非零元素的相對順序。 Given an array nums, write ...
摘要:月下半旬攻略道題,目前已攻略題。目前簡單難度攻略已經到題,所以后面會調整自己,在刷算法與數據結構的同時,攻略中等難度的題目。 Create by jsliang on 2019-07-30 16:15:37 Recently revised in 2019-07-30 17:04:20 7 月下半旬攻略 45 道題,目前已攻略 100 題。 一 目錄 不折騰的前端,和咸魚有什么區別...
摘要:是的倍數,先找有多少個個,然后找多少個個,補上,然后多少個個,補上個個個 Problem Write an algorithm which computes the number of trailing zeros in n factorial. Challenge 11! = 39916800, so the output should be 2 Note i是5的倍數,先找有多少個...
摘要:在線網站地址我的微信公眾號完整題目列表從年月日起,每天更新一題,順序從易到難,目前已更新個題。這是項目地址歡迎一起交流學習。 這篇文章記錄我練習的 LeetCode 題目,語言 JavaScript。 在線網站:https://cattle.w3fun.com GitHub 地址:https://github.com/swpuLeo/ca...我的微信公眾號: showImg(htt...
閱讀 1048·2021-10-11 10:59
閱讀 3601·2021-09-26 09:55
閱讀 891·2019-08-30 15:55
閱讀 2650·2019-08-30 15:44
閱讀 434·2019-08-30 14:06
閱讀 680·2019-08-30 11:26
閱讀 3336·2019-08-30 10:49
閱讀 2466·2019-08-29 12:53