公告版位

程式實做部分通常主要包含演算法和資料結構:

演算法

基本演算法

常見考古題

Q1. 不使用暫存變數交換兩個變數 ( Swap two variables without using a temporary variable )

說明:參考這裡

 

Q2-1. 計算 1 + 2 + 3 + ... + N 的總和 ( Sum the Integers from 1 to N )

說明:參考這裡,可以思考不同的解法,例如:

  1. 使用遞迴
  2. 比O(n)時間複雜度更快的方法

 

Q2-2. 計算1 * 2 + 2 * 3 + ... + (N - 1) * N的總和 ( Write a function to calculate 1 * 2 + 2 * 3 + ... + (N - 1) * N )

說明:參考這裡,此為上題的相關類題,其他不同的變化題型解法也是類似。

 

Q3.-1 在一個未排序數列中找到最大值的方法

說明:我想這題很簡單應該就不用寫了,相反的找最小值也是用相同解法即可。

 

Q3-2. 在一個未排序數列中找到第二大的值的方法 ( Find second largest number in array )

說明:參考這裡,此為上題的相關類題。

 

Q3-3. 在一個未排序數列中找到第K大的值的方法 ( Find kth largest number in array )

說明:參考這裡,此為上題的相關類題。

 

Q4. 有n個連續整數中少了一個,試著找到最快的方法算出少了哪一個 ( How to find the missing integer in an array )

說明:參考這裡,可以思考空間複雜度為O(1)的解法。

 

其他考古題

Q1. 從兩個數字中找出最大的一個而不使用判斷描述 ( There are two int variables: a and b, don't use "if", "? :", "switch" or other judgement statements, find out the biggest one of the two numbers )

說明:參考這裡

 

資料結構

Q1. Stack

說明:參考這裡

 

Q2. Queue

說明:參考這裡

 

Q3. Linked List

說明:參考這裡

 

持續更新...

文章標籤
創作者介紹

小殘的程式光廊

emn178 發表在 痞客邦 PIXNET 留言(4) 人氣()


留言列表 (4)

發表留言
  • 準備面試者
  • 謝謝!
  • 不客氣

    emn178 於 2015/02/06 20:07 回覆

  • 默默接受幫助的人
  • 非常感謝您的整理!!
  • 不客氣

    emn178 於 2015/02/06 20:07 回覆

  • 路人
  • Queue的連結指錯了 指到Stack囉
  • 感謝指正,已修正

    emn178 於 2015/02/06 20:07 回覆

  • Andy
  • 衷心感謝難以言表
找更多相關文章與討論