稀有猿诉

十年磨一剑,历炼出锋芒,说话千百句,不如码二行。

Understanding Minimum Viable Product

Minimum Viable Product(MVP)是创业公司中比较流行的一个产品开发方法,一个比较贴切的翻译是最低可行产品,但总感觉不如英文原文有感觉。它能够帮助创业团队以最小的成本,开发出一个刚好能满足用户核心需求的产品,来验证商业逻辑是否可行。

Assimp安装折腾记

为了学习OpenGL,在学习大名鼎鼎的LearnOpenGL时,参考它的源码时遇到了一点小小的困难,折腾了两天,感觉有必要总结一下。

LearnOpenGL是一个大神写的一整套关于OpenGL的资料,已出版成书,非常具有参考价值。不过它里面的示例都依赖于一些开源库,如assimpglfw以及glm等。在它的ReadMe中也都针对主流平台Windows, Linux/Unix以及Mac上面给出安装和编译教程。

Metaprogramming in Python

元编程是一种编写生成或者处理程序代码的技术,Python语言也支持元编程,今天就来好好的学习一下。我们先了解元编程的概念,然后再深入探讨在Python中如何实现元编程。

Deploying Python Applications

一个软件项目通常的开发流程包括创建,开发,打包和发布,不同为类型的项目具体过程可能不太一样,比如像Web项目,最后一般不叫发布而是叫做部署,并且像动态语言类的项目一般不会有打包过程。但总的来说,这几个流程确实是任何一个软件开发过程中必做的事情。今天就来学习一下如何部署Python应用程序,也就是除了项目开发写代码以外的一些必须做的事情。

Python GUI Made Easy

大Python是很好用的一门编程语言,默认情况下我们都当成脚本来使用,都是通过命令行方式来运行我们写的程序。但有些时候GUI还是很方便使用的,脚本和命令行最适合的场景是批量任务运行和自动化,但是如果交互性质的任务较多时,脚本就特别不方便,这个时候GUI就相当的方便。因此,学习一下GUI相关方面的框架,还是相当有必要的。

Python Runtime Environment

Python是非常流行的通用编程语言,因其简洁和易读而广受喜爱,近年来由于深度学习的崛起更是让Python登顶为最受欢迎的编程语言。虽然已使用Python写了一些程序,但总是缺少深度的理解,加之前段时间因为升级pip导致一些依赖的module无法正常工作,于是要停下来把Python到底是如何工作的了解清楚。

Hashing Hash and HashMap

哈希表(HashMap)或者叫做散列表,是非常常用的一种二维的键值对式的数据结构,用以非常高效的解决查询问题的。 其核心是Hashing,这是把一个对象映射到一个索引的过程,实现hashing的函数通常称为hash函数或者叫散列函数,基于hashing实现的数据结构称作HashMap,或者叫做散列表。

TopK问题,堆和快速选择

TopK问题是很常见的一种问题,它的描述是从一个数据集或者序列中取出前k大(或者前k小),或者说找出第k大(第k小)。最为典型的就是 题215. 数组中的第K个最大元素。解决TopK需要的是最基础的数据结构和算法,不但可以考查编码基本功,更能考查思维能力。

DFS in Depth

前面一篇文章讲解了DFS的基本概念和基础的使用方法,但不够深入,DFS的应用是很广泛的,不论是枚举状态或者路径,还是递归,其本质上都是DFS。今天就来好好的理解一下DFS的内在本质,并学会在树,在图以及在回溯中的应用。