筆試幾種算法

昨天手機更新wp8.1變成板磚,拿去htc售後換了主板(htc售後很不錯的哦),拿回來接着升級。收到了巨人網絡的筆試通知,要去上海,不管去不去,先做點算法題再說吧,找了點基本的題放上來了:

1.寫一個函數,交換兩個變量的值,不使用第三個變量。


2.假設A上臺階,一次可以跨1層,2層或3層,問A上50層臺階,有多少種走法?
假設A上臺階,一次可以跨1層,2層,3層.. 或m層,問A上n層臺階,有多少種走法?
其中,m和n都是正整數,並且 m <= n, m <= 10, n <= 50
請編程解決這個問題,並詳細說明解題思路。


3.請設計一套對n個字符進行全排列的算法。
如果對該算法輸出全排列順序分別標記序號,從1到n!
那麼,給出low, high,能否不算出所有排列,而直接輸出第low個到第high個的排列方式。
請寫出示例代碼,並詳細說明解題思路。


4.一棟樓有N層,要去每一層的人數分別爲p[1], p[2], ...,p[n],如果電梯只停1次,問停哪一層,可以讓所有人走的樓層最少。
如果走路上一層樓耗費的能量爲k1, 走路下一層樓消耗的能量爲k2,坐電梯上一層樓消耗的能量爲k3,問停哪一層,可以讓所有人消耗能量最少。
請編程解決這個問題,並詳細說明解題思路。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章