# 2023年 [資訊科技產業專案設計](https://hackmd.io/@sysprog/info2023/https%3A%2F%2Fhackmd.io%2F%40sysprog%2FS11ooE4Rh) 作業 2 🦸:interviewer 🤵:interviewee ==[video1(漢)](https://youtu.be/zo6GSuHGTsk)== ## 自評-程式部分 * 後半部有小失誤,臨場滅火的能力也需要多培養。 * 打字速度還是不快,繼續多練習。 ## 自評-面試部分 * 相比於第一次作業,覺得自己有小小進步了,看完別人的作業上次真的做得好爛哈哈。 對照組 ==[video1]()== ==[video2]()== ==[video3]()== * 上次比較偷懶 ?就打程式部分直接用轉場跳過,這次努力嘗試邊打code 邊說話了,雖然說自己事後看了下影片發現有時候會停頓一陣子,果然這真的不是一天兩天能練起來的事情。 * 按鍵盤應該要小聲一點,往後為了面試品質,可以添購好一點的麥克風,避免讓對方聽到過多的環境雜音。 * 上次作業的他評有提到不要用原題,所以稍微對題型做了點變化,恰好這學期有修 Data mining 的課,所以就選了 FP-growth 來延伸,但原題的難易度我覺得高了一點,多了一些限制要求。 ## 觀看其他同學得到的收穫 * 針對 interviewer 有些人說英文真的很好聽,就算不開 YT 的翻譯字幕也都能聽懂他在說甚麼,所以英文口說真的得好好加強。 * 針對 interviewee 有些同學在設計問題以及對答流程都做得不錯,這部分我自認還有很大的進步空間。 ## 從其他同學得到的評價 * 優點 1.開頭的開場白很好 2.口齒清晰 3.反覆提問確認對題目的掌握 4.對程式的解說清楚易懂 * 缺點 1.隔著口罩與安全帽,收音的清晰度受到嚴重影響 2.沒有對題目做延伸討論 3.英文發音不正確 4.沒有拍出程式過程還是有點可惜 ## [Leecode:443. String Compression[Medium]](https://leetcode.com/problems/merge-strings-alternately/?envType=study-plan-v2&envId=leetcode-75) ## [延伸變化參考:FP-growth](https://towardsdatascience.com/fp-growth-frequent-pattern-generation-in-data-mining-with-python-implementation-244e561ab1c3)  ###### REACTO * Repeat: part1:🤵確定輸入輸出格式 part2:🤵無 part3:🤵確定每次輸入的data其中包含的資料筆數為何 * Example:題目的目標比較明確,這部分這次沒有做好 * Approach: part1:🤵以 empty dict 儲存輸出結果,並以兩個for迴圈迭代輸入,比較每次迭代的元素,一但相同就將 count +1 part2:🤵改為只用一個for 迴圈 part3:🤵先用 while True 去進行多次輸入,每次輸入完成去呼叫作計數的 count function * Code:已呈現在下方 * Test:針對最後動態插入有使用 🦸 提供的 test data 測試。 * Optimization:優化 time complexity,減少做白工。 #### 做很多白工的程式碼(python) ```python= #part1 data=['apple','apple','orange','orange','lemon'] item_counts={} for i in data: count = 0 for j in data: if i == j : count +=1 item_count[i]=count for item,count in item_count.items(): print(f"{item}:{count}") ``` #### 針對 time complexity 進行優化 ```python= #part2 item_counts={} for i in data: if i not in item_counts: item_count[i]=1 else: item_count[i]+=1 for item,count in item_count.items(): print(f"{item}:{count}") ``` #### 動態插入 ```python= #part3 item_count={} def count(input_data): for i in input_data: if i not in item_count: item_count[i]=1 else: item_count[i]+=1 for item,count in item_count.items(): print(f"{item}:{count}") while True: input_data=input("Enter an item") count(input_data.split(',')) if input_data =='q': break ``` # 第二次作業-他評 ## 針對 interviewer 的建議: * * ## 針對 interviewee 的建議: * * ## 第四次作業-他人評論-01 - Interviewer: - 優點: - [0:43](https://youtu.be/zo6GSuHGTsk?t=43) 先詢問面試者有沒有一些基礎知識 - [9:55](https://youtu.be/zo6GSuHGTsk?t=595) 深入問題 - 缺點: - Interviewee: - 優點: - [1:08](https://youtu.be/zo6GSuHGTsk?t=68) 講解得很好,英文與中文的切換很自然 - 改進時間複雜度 - [10:20](https://youtu.be/zo6GSuHGTsk?t=620) 跟面試官提問明確問題輸入 - 缺點:
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up