分享代碼--求整數冪以及LeetCode 334
個人微信公眾號liss_H, 上面會有考研資料分享,歡迎關注。
今天分享如何求整數冪,代碼來自書籍《演算法心得,演算法高效的奧秘》,代碼如下:
#include<stdio.h>int iexp(int x, unsigned n){ int p ,y ; y =1; // Initialize result p =x; // and p. while(1){ if(n&1)y = p*y; // if n is odd, mult by p. n =n>>1; // position next bit of n if(n == 0)return y; // if no bits in n p = p*p; // power for next bit of n }}
LeetCode 334:Increasing Triplet Subsequence
Given an unsorted array return whether an increasing subsequence of length 3 exists(存在) or not in the array.
Formally the function should:
Return true if there exists i, j, k
such that arr[i] < arr[j] < arr[k] given 0 ≤ i < j < k ≤ n-1 else return false.
Your algorithm should run in O(n) time complexity and O(1) space complexity.
Examples:
Given[1, 2, 3, 4, 5]
,return true
.Given [5, 4, 3, 2, 1]
,
false
.
此題容易誤解,建議多讀幾遍。
歡迎留言,也歡迎關注微信公眾號
推薦閱讀:
※收藏!機器學習演算法優缺點綜述
※最萌編程高手是這樣煉成的
※模擬退火演算法學習筆記
※子平演算法管理應用(四)
※哈希演算法