作者secretfly (乂o賈霸死鬼o乂(Jquery))
看板Soft_Job
標題Re: [請益] 面試如果考coding可以這樣回答嗎?
時間Mon Feb 26 02:03:12 2024
※ 引述《MOONY135 (脫俗仙子談無慾)》之銘言:
: : 自己沒有把握用純代碼方式回答的話
: : 可以把解題方法或思路寫下來當作替代方案嗎?
: : 就是會用到什麼算法、函式,邏輯大概是怎樣....之類
: : 例如這個題目:
: : https://imgur.com/dAHI3Jq
: : 標準答案應該是這樣:
: : https://imgur.com/MdnXLxg
: : 如果我的回答是:
: : https://imgur.com/FKlAUZJ
: : 如果這樣回答會不會被面試官ㄍㄧㄠˇ
: : 可能這個問題的回答是「要看人」
: : 不過還是想問一下普遍人的看法
: : 謝謝各位~
: : PS:
: : 我知道上面那題很簡單
: : 目前的功力即使是紙筆寫也是可以輕鬆完成的
網路上搜尋文章 正在學習中 結果翻到4年前這篇古文
發現了很有趣的現象 AI完全改變世界 原PO的語言完全就是跟chatgpt施咒的內容XD
當然文章原本主旨是討論面試 這我就不說了 沒這方面知識
只是想分享一下
chatgpt在這幾年的誕生 影響力真的超巨大
回顧底下的留言更好笑:
所以你上班要寫紙條給其他工程師開發?
我就問問 這殺小語言?
也就是說 現在就算出一張嘴 也可以靠gpt幫忙完成一些題目
不過這也讓我反思 真正"會程式"的需求 其實好像又更難了 要靜下心
不要只是抄抄AI 吸收進去 @@
馬上反省自己
不知道大家對這篇古文有什麼想法?
是否覺得學程式變簡單了 還是人心浮躁 其實門檻更高了呢XD?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.64.209.41 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Soft_Job/M.1708884194.A.672.html
1F:推 sanctitysky: 答案是對的 但應該不是好答案 02/26 03:16
2F:→ sanctitysky: 我指那個程式題目的答案 02/26 03:17
3F:→ surimodo: A.stream().sort().map(t->t*2).tolist() 02/26 03:17
4F:→ peter98: 樓上你要不要再想想... 02/26 04:44
5F:推 drajan: ChatGPT可以告訴你 how to implement, 但沒辦法告訴你 wha 02/26 05:17
6F:→ drajan: t to implement, 這是資深工程師的技能。所以ChatGPT可以 02/26 05:17
7F:→ drajan: 取代初級工程師 02/26 05:17
8F:推 cancelpc: 且chatgpt回答不一定是對的 02/26 05:37
9F:→ cancelpc: 且功能一樣,但每種寫法副作用不一樣 02/26 05:38
10F:推 expiate: 不知道是不是那一次很多人想秀答案,結果卻很悲壯的那一 02/26 05:52
11F:→ expiate: 次 02/26 05:52
12F:推 una283: AI就是寫出一個「可以解決問題」的解 02/26 07:26
13F:→ una283: 再高級一點的AI可以根據需求寫出運算io少的解 02/26 07:27
14F:推 una283: 不過亦毋需擔心因這樣發展下去初級需求還是會暴增 02/26 07:33
15F:→ una283: 產業轉型成長期中仍是需要人的介入不足AI無法配合的部分 02/26 07:34
16F:→ una283: 補足 02/26 07:34
17F:推 una283: 只是可以預期的以後初級碼農會被要求更快寫出來 02/26 07:42
18F:→ una283: 工作量會變多薪水卻不見得跟上 02/26 07:43
19F:→ loadingN: 就只是原本抄stackoverflow的換一個地方抄 02/26 07:46
20F:→ qwer338859: 3樓先排序不考慮負數? 02/26 07:48
21F:推 stepnight: 為啥非遞減就是升冪排序 02/26 08:09
22F:→ stepnight: 平方後沒負數拔...? 02/26 08:21
23F:→ zxc8787: 好奇為啥非遞減就是遞增+1,也可以是隨機排序吧 02/26 08:33
24F:→ peter98: 在那邊好奇為啥非遞減就是遞增的,高中數學課是在睡覺? 02/26 09:35
25F:→ peter98: 要是一時忘記能不能有等號就算了,在那邊扯隨機...... 02/26 09:42
26F:→ peter98: 這樣子思考題目描述的方式,白板面試題肯定被電飛...... 02/26 09:42
27F:→ airtsubasa: 不是每個公司都能上chatgpt 02/26 09:51
28F:推 Mchord: 非遞減數列是有定義的,必須每項元素≧前項元素 02/26 09:54
29F:→ brucetu: 本來就很多文組轉職不用意外吧0.0 02/26 09:55
30F:→ brucetu: 看到一串文字就用自己的腦解釋而不是去查定義 02/26 09:55
31F:→ brucetu: 理組看到不確定定義的名詞反射行為是去查定義 02/26 09:56
32F:→ surimodo: 應該是 t*t ? 睡前瞄一眼沒認真看 02/26 09:57
33F:→ surimodo: 然後sort 要在 map 之後 02/26 09:57
34F:推 stepnight: 學費了,讚 02/26 09:59
35F:推 etbear: 這題最佳解應該不用sort的O(n)解吧 02/26 10:00
36F:推 drajan: 用平方之後sort只是起手式 first follow up一定是叫你 lin 02/26 10:11
37F:→ drajan: ear解掉 再來問 overflow, 然後無窮序列…很多玩法 問到倒 02/26 10:11
38F:→ drajan: 為止 02/26 10:11
39F:推 sarsman: 把 <0 的數字跟 >=0 的數字視為兩個 array,分別做平方後 02/26 10:58
40F:→ sarsman: 再 merge 成一個 array 就能 O(n) 搞定了 02/26 10:58
41F:→ zxc8787: 秀下限了 原來有定義@@ 02/26 11:12
42F:→ lycantrope: 所以要怎樣不sort解這題? 02/26 11:47
43F:推 qk3380888: 不Sort就空間換時間啊 02/26 12:07
44F:推 f26724309: Sort也只是把實作包成函式給你方便呼叫而已 02/26 12:35
45F:→ WTS2accuracy: biSearch找到0在2pointer就好了 連空間也不用 02/26 13:19
46F:→ abc12689: 觀察發現輸入陣列已序,操作後最大值會落在左右端點 02/26 13:25
47F:→ abc12689: e.g., -4, 10 其一會是運算後的最大值 02/26 13:26
48F:→ abc12689: 雙指標解法為確保範圍內可產生的最大元素 02/26 13:30
49F:推 hobnob: Two pointers 一個loop解決 02/26 13:31
50F:推 BBSealion: O(N)方法太多了,但一時沒看出能否 in-place 做掉 02/26 13:42
51F:→ BBSealion: 可以的話,或許這才是這題最終想考的東西 02/26 13:43
52F:推 etbear: 可以in-place吧, 可是有點無謂的複雜 02/26 13:51
53F:→ etbear: 如果我是考官, 隨便寫個O(n)就給過了 02/26 13:52
54F:推 fatb: 速度寫出一個程式變簡單 但量產就炸裂 02/26 14:55
55F:→ ssccg: 就兩個sorted list merge換個說法而已 02/26 15:06
56F:推 theedge: lc easy原題就這麼有鑒別度了嗎 02/26 15:07
57F:→ ssccg: 工程師的功能就是不要只聽客戶說要怎麼做,要看出這需求真 02/26 15:10
58F:→ ssccg: 正是要解什麼問題,然後用適合的解法 02/26 15:12
59F:→ ssccg: 先平方再sort,根本題目裡就寫了,並不能算答案 02/26 15:16
60F:→ lycantrope: 喔沒發現array本來就sort 02/26 15:53
61F:→ brucetu: 想了一下應該是two pointer可以利用原本的非遞增特性 02/26 20:15
62F:→ brucetu: 薪水不高的職缺給平方再sort會給過啊,只是要檢查一下你 02/26 20:16
63F:→ brucetu: 至少會寫很簡單的程式不是完完全全不會 02/26 20:16
64F:推 new122851: 與其拘泥於程式寫法,不如研究怎麼將程式變現,能賺錢 02/26 20:29
65F:→ new122851: 的程式才是好程式。 02/26 20:29
66F:推 aresa: 起點0和n-1,比大小大的先push back,最後reverse 也是o(n) 02/26 23:24
67F:推 waiwailove: 排序我都寫 小到大排序或大到小,一定要升降嗎 02/27 02:15
68F:推 Ericz7000: sort幹嘛 為什麼不指針去找就好= = 02/28 06:09
69F:→ ideaup: scansort 為此題正解, 02/28 08:08
70F:→ ideaup: InsertSort 03/01 07:43
71F:→ brucetu: 都告訴你有o(n)就不用考慮insertion sort了 03/01 08:37
72F:推 qwer338859: 今天的每日剛好是這題 真的有時間O(n)空間O(1)的解我 03/02 16:29
73F:→ qwer338859: 也想看看 03/02 16:29
74F:推 etbear: in place全平方 O(n) 03/02 23:16
75F:→ etbear: 找出平方後最小值所在 O(n) 03/02 23:16
76F:→ etbear: 把前半到最小值in place reverse O(n) 03/02 23:18
77F:→ etbear: 前後兩數列in place merge O(n) 03/02 23:28
78F:→ qwer338859: 蛤?有程式碼嗎 03/03 02:38
79F:→ etbear: 啊最後一步好像無法O(n) O(1) 03/03 05:35
80F:→ etbear: 本來直覺兩個排好的總有辦法in place併起來 03/03 05:36
81F:→ wulouise: 最後不就是兩個數列嗎?應該可以two ptr左邊的永遠最小 03/03 15:52
82F:→ wulouise: ? 03/03 15:52
83F:→ wulouise: etbear的想法應該可行 03/03 15:53
84F:→ qwer338859: 你先貼一個AC的程式碼來看看= = 03/03 16:02
85F:→ brucetu: 這題不就 LC 977 自己去看解答不就 O(n) 03/03 17:33
86F:→ brucetu: 是在秀= =? 03/03 17:33
87F:→ qwer338859: 你確定空間O(1)?? 03/03 19:06
88F:→ qwer338859: 喇一堆不貼 時間O(n)空間O(1)AC程式碼 用嘴寫程式 03/03 19:10
89F:推 Dracarys: 拋磚引玉一下 03/03 20:33
91F:→ brucetu: 空間O1是你提的,沒有人說可以,不存在的東西自己在那邊 03/03 20:42
92F:→ brucetu: 說「如果有我也想看看」,幹嘛?在你那句話之前提出可以O 03/03 20:42
93F:→ brucetu: n的人是有哪個人說可以同時空間O1嗎?自己要幫題目加難 03/03 20:42
94F:→ brucetu: 度自己去慢慢玩,你怎不乾脆說如果有時間Ologn也想看看, 03/03 20:42
95F:→ brucetu: 哈哈 03/03 20:42
96F:→ qwer338859: 阿不是有人說可以in-place 只有你在那邊當槓精 03/03 21:14
97F:→ qwer338859: 閱讀能力堪憂 有人說可以我就好奇阿XD 03/03 21:14
98F:→ peter98: in-place指的是without ANY additional memory,我也好奇 03/03 23:12
99F:→ peter98: 要怎麼做到。 03/03 23:12
100F:→ peter98: 也不要求完全不用了,就來個O(1) memory也可以~想看解法 03/03 23:13
101F:→ peter98: 我去年面試過3個,樣本數不多,但解法要嘛是1. nlgn時間+ 03/03 23:15
102F:→ peter98: 常數空間;要馬2. 線性時間 + 線性空間。如果有人寫出線 03/03 23:16
103F:→ peter98: 性時間 + 常數空間,我的Feedback一定給他strong hire 03/03 23:16
104F:→ peter98: 想學習線性時間+常數空間,能請et大大寫一下嗎? 03/03 23:17
105F:→ etbear: 實寫確實變成上面兩種情況之一 03/03 23:22
106F:→ etbear: 只能偷把題目改成linkedlist或是用generator了(誒 03/03 23:23
107F:→ peter98: linked list就沒問題,用external memory sorting的概念 03/03 23:36
108F:→ peter98: 就可以了。 03/03 23:36
109F:→ lycantrope: linkedlist效率就是差,求大神in-place的解法 03/04 11:25
110F:→ Ericz7000: in-place想不到 我也好奇 03/04 14:24
111F:推 Ghamu: 其實多數人都會寫 不會寫上網查也可以找到怎麼做 但你要做 03/08 18:49
112F:→ Ghamu: 一個可長可久 別人看得懂 可持續維護擴展的程式就比較困難 03/08 18:49
113F:→ Ghamu: 了 03/08 18:49
114F:推 wulouise: in place merge sort很複雜,在範圍限定下可以把一個ite 03/15 23:01
115F:→ wulouise: m分成high byte, low byte, merge sort結果放在high by 03/15 23:01
116F:→ wulouise: te,原本的array放low byte,最後把low byte去掉 03/15 23:01
117F:推 cathychg: 這 真的跟經驗值有關 , 高經驗值 刷題多 會比較沒壓力 04/28 12:29
118F:→ cathychg: 沃經驗值不高 壓力大 04/28 12:29