mvj3 最近的时间轴更新
mvj3

mvj3

V2EX 第 1626 号会员,加入于 2010-09-09 17:21:48 +08:00
根据 mvj3 的设置,主题列表被隐藏
二手交易 相关的信息,包括已关闭的交易,不会被隐藏
mvj3 最近回复了
2018-02-26 18:09:22 +08:00
回复了 junchenfeng 创建的主题 酷工作 [北京-望京][17zuoye.com] 求贤 Python Fullstack
支持前东家,俊晨是我共事过的非常具有才华和自带强工程属性的教育数据科学家。
2016-03-03 22:44:23 +08:00
回复了 datapipeline 创建的主题 酷工作 [北京] Data Pipeline 诚招架构师/数据工程师
提交一个问题, http://www.datapipeline.com/ 的表格在提交时有 Unable to send form. No storage service is configured. Configure one using the 'Storage' tab from the configuration area for this block. 错误。
2016-03-03 22:41:02 +08:00
回复了 datapipeline 创建的主题 酷工作 [北京] Data Pipeline 诚招架构师/数据工程师
请问远程工作适用吗?
2015-06-25 21:20:03 +08:00
回复了 gaoxt1983 创建的主题 程序员 求好玩的语言,最好是新的,特别小众的那种
可以看下我正在设计的语言草案 http://human-lang.org/ ,目前基本是一些笔记,至于如何实现还是至今遥遥无期。欢迎关注和贡献,和有同感的人一起交流!

从设计上来说,主要是考虑了很人性化的组合式自动函数识别,所以可以用类似 Ruby 的链式风格来写代码,比如 1.Book(name="Life"). 。
2015-06-16 13:17:17 +08:00
回复了 mvj3 创建的主题 程序员 为什么很多人理解不了 Max Howell 通不过白板编程面试
@aszxqw 多谢支持!牵扯到人的问题,回到最后一切都是人性的问题。
2015-06-16 09:43:56 +08:00
回复了 mvj3 创建的主题 程序员 为什么很多人理解不了 Max Howell 通不过白板编程面试
@Sarielwind @msg7086 轮子的概念和范围还是很模糊的,C语言里的 sprintf 其实也是一个轮子,然后好多语言继续发明新轮子,本质上都没啥区别。

@rwx 在理。
2015-06-15 23:27:44 +08:00
回复了 mvj3 创建的主题 程序员 为什么很多人理解不了 Max Howell 通不过白板编程面试
@binux 以前想学文的,可是成绩太差,学了个通信工程的三本,结果还退学了。嗯,你的猜测是有道理的,我确实不像一个标准的理工男。还有 Max Howell 是化学专业的,我看了他的 Github 也没有特别是算法的,好像都是应用级别的。

顿悟不顿悟,我觉得世界还是很神秘的,黑天鹅事件还是很多的。我感觉我的编程能力还是通过思考我自身的思维来提升的。

哈哈,看了你的 Github ,了解你是一个 Python 的牛人啊。

@Heartwork 嗯(对错我就暂时不用理解了),你讨论的是递归的具体机器(现实)实现。
2015-06-15 23:22:02 +08:00
回复了 mvj3 创建的主题 程序员 为什么很多人理解不了 Max Howell 通不过白板编程面试
@binux 以前想学文的,可是成绩太差,学了个通信工程的三本,结果还退学了。嗯,你的猜测是有道理的,我确实不像一个标志的理工男。还有 Max Howell 是化学专业的,我看了他的 Github 也没有特别是算法的,好像都是应用级别的。

顿悟不顿悟,我觉得世界还是很神秘的,黑天鹅事件还是很多的。我感觉我的编程能力还是通过思考我自身的思维来提神的。

哈哈,看了你的 Github ,了解你是一个 Python 的牛人啊。

@Heartwork 嗯(对错我就暂时不用理解了),你讨论的是递归的具体机器(现实)实现。
2015-06-15 23:06:51 +08:00
回复了 mvj3 创建的主题 程序员 为什么很多人理解不了 Max Howell 通不过白板编程面试
@Heartwork 0. 哈哈,多谢夸奖。

1. 多谢劝告,最近我还真的是偶尔上清华一个副教授的数据结构 http://www.xuetangx.com/courses/TsinghuaX/30240184_2015X/2015_T1/info ,挺有意思的。不过我练习的角度还是深有目的的。

2. 水平不水平我不认同,我认同这是毕业生可以背出来的算法习题,毕竟发明一个算法太难了。

3. 嗯,我之前也跟着类似教程做过一个 https://github.com/mvj3/BuildYourOwnLisp
2015-06-15 22:36:37 +08:00
回复了 mvj3 创建的主题 程序员 为什么很多人理解不了 Max Howell 通不过白板编程面试
@caiych 首先多谢你,我对这个题本身要求的需求再思考了一下。"min-max the tree, ascending to descending" 意思是这是一颗从小到大的树,然后去升序到降序。我的疑问是 min-max 和 ascending to descending 不是有点同一个意思吗。好吧,我对树结构的各种理论并不了解,英文水平也是半吊子,所以就不说这个了。

比起这个,我觉得还有个更有意思的问题,凭我的经验来推测(仅仅是我的推测),递归版本实现了,但是非递归(用 Stack 实现)没实现。我想说的是,我也是刚想明白整个流程,昨天看了微博上 左耳朵耗子 的 C++ 实现,只明白用了个栈来做临时存储和协调者,而节点在里面的进出并没有看懂。刚才重新看了一下,才算是真的明白了。你是不是同样会觉得有点吃惊呢?!

我也说一下自己除了上面提到的 detdup 之外的完全由我自己独立设计和实现的算法相关的开源作品:
1. https://github.com/mvj3/fill_broken_words 填破碎单词,Python实现。
2. https://github.com/mvj3/phrase_recognizer 英文短语识别,Python实现。
3. https://github.com/mvj3/region_unit_recognizer 识别 带有省市区等地址的 企事业单位,Python 实现。
4. https://github.com/mvj3/hangman 猜单词游戏,Ruby实现,两年前的一个做了两天的面试题。

这四个都是非常有意思的问题,就我实际做的经验(很完整的工程实现)来看,1 和 2 较难,大概是两周,3 和 4 相对容易,应该都是两天。前面三个都是由树结构实现的,最后一个是字典实现的(其实有人做了更好的基于树实现的)。

所以这里有个有意思的问题就是,我不能马上看懂二叉树的栈实现,但是我却可以做出以上,不证明了白板面试是非常随机和带偏见的一个测试吗。


@Heartwork 最好是你可以提供一个基于某算法实现的开源项目(这样大家都可以看到,否则纯算法显示不出工程能力),并具有良好的工程结构,不然懂算法有什么用呢,你说是吧。


@binux 1、Github 排行榜只能说明流行程度 --- 不过上了一定代码量,并很高 star + fork 的,那基本都是货真价实的了。或者你可以举个反例看看?
2、Homebrew 并不是复杂的软件系统 --- 复杂不复杂都是相对的。不过我愿意承认我大概翻过 Homebrew 代码(当然没有像实际工作项目那么认真,花了很多时间),除了 Formula 的格式,其他基本都没懂。

3、如果你连用栈模拟递归都需要「顿悟」的话,说明你根本不理解递归,甚至不理解函数是怎么执行的。

可能是我文章里说的不够清楚吧,我说的"顿悟"指的是 while 里面的部分,不过这个回复的上面已经解释了我理解这个算法的整个事实过程了。理解用到 stack 确实是即可的,因为我平时工作就经常用到这个技巧。但是 while 里面的逻辑整个放到脑子里,在我的思维里真的是顿悟的,我想这个是人们通常的被别人指点一下的那种体验。当然很可能是我的思维比你的慢,即是 CPU 慢点;当然你也听说过人类最近用成千上万台机器才勉强识别出了猫,所以CPU再快也没用。

我不清楚你对递归和函数的了解水平,但是我还是愿意给出我的理解,虽然可能有错。

什么是递归呢,在我看来,它是人脑思维的一种,和时间空间等一样神秘。人类发现了数据的递归模式(我递归论证了)模式,利用一些可用于稳定执行逻辑的物质(比如CPU器件)来做操作。

函数如何执行呢,摘录一段我在 [The Design Draft Of Human Programming Language]( http://human-lang.org/ ) 的思考笔记 "计算机在本质上就是 过程 + 数据,用 CPU (central processing unit) 来操作 IO (input output) , 也即是用布尔逻辑操作二进制数据。布尔逻辑包括基本的 与,或,非,再进而构建出 与非,或飞,异或 等复合操作(建议通过看 Wikipedia 上的 逻辑函数表示法 得知其相互关系),再进而构建出 集合交集,访问数组某索引的值,等常用数据结构的操作,最后进而构 建出万能的 函数 操作。数据在计算机体系里都表示为离散的 0 1 数字串,进而构建出 Boolean, Integer,Float,Char 等基本数据结构,再进而构建出 String,List,Set,Dict 等高级数据结构,最 后构建出类继承系统,JSON,XML 等复杂业务数据结构。",不知道这样可否让你明白我的理解。
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2717 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 63ms · UTC 05:26 · PVG 13:26 · LAX 21:26 · JFK 00:26
Developed with CodeLauncher
♥ Do have faith in what you're doing.