Oversea_Job 板


LINE

※ 引述《nukchichi (haha)》之铭言: : 大家好, : 今天phone interview某间大公司的小 entry level Software developer. : 考到一个问题...想分享出来且寻求答案. : == : 给数字 5, 5, 7, 12, 3, 5 : 如何找出并印出里面是两个和 sum = 10的数字组(pair) : 他给的printpair 的 output是 55 55 73 55 (但是我後来想 应该有少给我37...) : == : 我一开始没有想法 但是时间压力 就直接先给他直观的做法 : 两个for loop 检查, : 第一次回圈 用10-5 = 5 去找数组里其他的5 找到就印出 : 2nd 10 - 5 = 5 去找其他的5 : 3nd 10 - 7 = 3 去找其他的3 : ... : 这样他说可以, 但是希望能更好. 我想了想 想不太出来请他能提示 : 他说: 想想为何我刚刚问你比较 link list, binary tree, 和hash table. : 我直觉是要用hashtable去找(他好像也认同我用hashtable) : 但是他要我把hashtable的样子跟他讲 exactly 一点~ : 我就答不出来了...然後就byebye了... : == : 烦请版友帮忙我这新手解答疑惑... : 感谢!! 入门经典考题之一, 虽然我不是很确定为什麽 37 和 73 算两对? 你的解法算是 naive solution, 用 O(N^2) 通常都不会过. 比较好一点的解法是先排序, 排完的数字为 3 5 5 5 7 12, 然後用两个指标, 分别指向最大和最小的数字 然後重复一个回圈, 直到大小指标重叠 如果大小指标相加小於 10, 就把小指标向右移 如果大小指标相加大於 10, 就把大指标向左移 如果大小指标相加等於 10, 就把相同的数字组合都印出来, 然後大小指标分别向内移 以上解法的瓶颈在排序, 一般比较排序, 就算是最好的 quicksort 也只有 O(NlogN) 後面回圈的部份是 O(N) 更好的解法是改用计数排序, 可以把排序那一段加快到 O(N), 基本上就是把数字倒进 hashtable, 数字本身是 key, 重复次数为 value. 最後再扫一次倒出来. 所以总结, counting sort + loop with two pointers, 时间复杂度为 O(N). --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 209.131.62.115
1F:推 ccchen:这个方法,印不出3 对 55 喔 07/30 14:01
2F:→ leeym:可以, 用 C(n,k) 可以算出要重复几次. 07/30 15:25
※ 编辑: leeym 来自: 209.131.62.115 (07/30 15:31)
3F:推 nukchichi:非常感谢你!(不过他说印出的顺序是固定那顺序的...) 07/30 16:45
4F:→ nukchichi:(所以感觉这方法会先印出37 or 73?) 07/30 16:46
5F:→ leeym:会印出 37 55 55 55, 如果顺序要固定, 可能得看 Solti 的. 07/30 22:35
6F:推 Solti:如果有要求顺序 我的也办不到 得多加一个array 最後再一次 07/30 23:19
7F:→ Solti:全部print出来, memory会变成O(N+K) 07/30 23:19
8F:推 Baudelaire:强者未看先拜... 08/12 02:21







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Boy-Girl站内搜寻

TOP