楼主:
iceberg (((You only live once)))
2019-10-26 08:28:10听说成大将来有一种新的考试入学方式,
考生全部关起来,写一整天code?
很好啊,没coding能力就先淘汰,造福业界,
最近我部门来了一个新人,
问我为什么要用linked list?
还要memory alloc/free很麻烦,
用array很方便不是吗?
嗯...好喔。
资结是基础内功,
一个懂资结、算法、OS写出来的code
跟一个array从头用到尾的code
以效能、空间、clean code的等级落差,
在同公司的薪水价差大概是
“完全没差”
所以不用太在意,
只要学长姐考古题背好,面试上就好(咦?)
※ 引述《a23395080 (路过看看)》之铭言:
: 资料结构这门课到底重不重要啊
: 如果非资工系的工学院学生没修DS 但是会写C
: 对未来找工程师职缺(非软件工程师)影响大吗???
作者: hongsiangfu 2019-10-26 08:53:00
非本科,借问alloc/free太常使用造成的破碎该如何处理,平台是32bit的mcu(非arm或dsp)
作者: HSUFIT (FireDance) 2019-10-26 09:08:00
自己弄一块memory pool来处理特定用途(大小)的allocation/free
作者: DFM (wen) 2019-10-26 09:45:00
现在硬件能力强资源也很足够,大部分的应用还真的看不出来差异。只要人的感受不觉得慢就好。
作者:
ko27tye (好滋好滋)
2019-10-26 09:48:00这篇才是真的,有四大背背考古题随便都有工作
作者:
iiiii (I take 5)
2019-10-26 09:50:00wp sp解决一楼问题
作者: whoknow0923 (whoknow) 2019-10-26 09:53:00
看用途吧,杀鸡还需要用牛刀吗
作者:
k268185 (k268185)
2019-10-26 09:55:00推一个 只要performance没有明显差异 能简单就简单
作者:
alumi7 (none)
2019-10-26 10:03:00去看slab的code
作者:
Jyery (æ–‡å¸)
2019-10-26 10:34:00写太难后面接手的也很难维护
作者:
yamakazi (大安吴彦祖)
2019-10-26 10:35:00这问题我有想过 list好处是能够依照需求随时增加减少 array在程式执行时比较难随时增减 array好处则是储存空间比list小 但坏处时是没办法做二元搜寻树至于一楼的问题 我记得那通常是OS处理的问题 mcu似乎无解array的大小要在编译前决定一楼的问题 看看能不能自己改或做做一个RTOS光是搜寻树的问题 array应该就惨败C++里面用到map的话 map本身也是红黑树如果只是控制简单mcu 的确用不到list 但如果你是写大型资料网站后端就要会不过很多人只会写C来操作mcu 写个forwhileifelse 就觉得自己会写C++ 会资结算法问写韧体的人怎么样用人名快速查找电话 他只会用二分搜寻法不会用红黑树map但有看过DS ALGO 的人就知道怎么做 差别大概是在这里
作者:
NCTU5566 (交大彭于晏)
2019-10-26 10:57:00推yamakazi大学DS和算法开始会用时间复杂度和空间复杂度来分析问题^就是开始会用我以前在电机系学的C语言顶多教到linkedlist和array差异当然也会提到array存取方便linkedlist空间使用等特性但没提到BigO的概念 BigO的概念是真的修资工DS Algo才会然后很多时候为了实现某个算法需要用哪个DS辅助因此两个很常绑在一起上,但也有独立只教algo的课独立教algo的可能就会教比较概念的greedy divide&concurdynamic programming但要怎样写成扣很多时候要某些DS帮
作者: badyy (nick) 2019-10-26 11:06:00
制造业或卖硬件还是可学起来然后照环境使用!有人想倒著用就入境随俗倒著用帮他做大一点开山立派 XD
作者:
NCTU5566 (交大彭于晏)
2019-10-26 11:07:00一点浅见觉得可以修DS和algo当作评估自己想不想走CS有错再请前辈们打脸修正QQ然后写韧体真的相对用比较少DS和Algo我同学在IC厂写韧体他真的不会tree graph这些东西他最多就会用array linkedlist和stack queue
作者:
odanaga (PixiyON)
2019-10-26 11:14:00觉得不懂os问题比较大
作者: fallinlove15 2019-10-26 11:18:00
一堆有现成解决内存管控的工具可以用 为什么不学一下呢
作者:
Litfal (Litfal)
2019-10-26 11:52:00linkedlist我还算熟,但老实说真的不常用
作者: qwerasdf6102 (eat_centrum) 2019-10-26 12:10:00
额 hash虽然查找快 但所占的空间更大吧
作者:
YcL5566 (哈哈哈)
2019-10-26 12:24:00能用mem换来的都是小事
作者:
IKnowWhy (知道为什么)
2019-10-26 12:32:00如果真的要循序处理array比较快好吗...
写FW的 内存常常就那么丁点大 没多少机会让你用复杂的东西 除非就像前面推文讲的一样你要刻类似RTOS之类的
作者:
matyih (mat)
2019-10-26 12:44:00现在很多系统是engineer time比computer time贵简单好维护的code比完全优化的更实际
推除非IC内存, 硬件厂一些老鸟觉得会C很厉害完全不知道在秋三洨...
作者:
Litfal (Litfal)
2019-10-26 13:15:00写dsp的表示qq,连alloc都没得用
作者: cjo4zo2k7al (就只是只) 2019-10-26 13:38:00
结论正确给推
作者: bizer (bizer) 2019-10-26 14:59:00
说实在,没有大量数据处理,哪有需要那些资料结构,整天call函数库的就更不用说了
作者:
Kuba4ma (哦吼)
2019-10-26 15:58:00结论正确xd
作者: hongsiangfu 2019-10-26 15:58:00
感谢各位大大无私分享
作者:
rodion (r-kan/reminder)
2019-10-26 16:25:00张飞比岳飞 array如何O(1) delete?一堆瞎扯结论正确的 就不要开玩笑被别人当真的 会害到人
作者:
gbs0856 (Water_Legend)
2019-10-26 18:14:00看推文,就知道台湾业界为何不重视软工,出不了杀手级应用服务,只配做代工
作者:
hanshsu (小肉呆)
2019-10-26 20:50:00driver 里面很多 listhead
作者: snoopy790428 (snoopy) 2019-10-27 00:01:00
面试就是头过身就过
作者: vm3tl6vup (我不是NONO..) 2019-10-27 02:44:00
一楼,去搜寻reap allocator
作者:
veru (ccc)
2019-10-27 13:11:00会用array 就表示没有要delete了 为什么要care 如何O(1)Delete? 当function的local variable 就够了举个例 做counting sorting 你会用array 当bucket还是list?
假设是写 c++的话,当然用stl啊,谁在那边跟你造轮子