最少硬币问题找零问题是说,已知某种硬币系统 [Ci, …],以及期望凑齐的找零值 Amount,找到硬币数量最少的那个找零方案:
∑NiCi = Amount 且 ∑Ni 最小
这里用 JavaScript 实现一个二叉搜索树。二叉搜索树可以很方便地进行排序。下面的实现比较简单,很容易就会出现非平衡二叉树。G.M. Adelson-Velsky 和 E.M. Landis 在 1962 年的论文《An Algorithm For The Organization Of Information》中提出了一种可以实现自平衡二叉树,后世称为 AVL 树。
除了 AVL 树,还有很多其他的平衡二叉树的实现,例如 AVL树,红黑树,B树,B+树,Trie树都分别应用在哪些现实场景中? 就是个不错的入门级参考,可以大致了解这些平衡树的特点、区别。看起来,红黑树是应用最广泛的。
ImageMagick 是一款可以运行在 Linux/Unix/Windows/MacOS (现在甚至支持 iOS、Android)下的免费开源图片处理程序。使用 ImageMagick 可以进行图片的拉伸、裁剪、缩放、格式转换、生成 GIF 、添加文字/图案等各种操作。
MacOS 下可以方便地使用 Homebrew 进行安装:
1 | $ brew install imagemagick |
magick 和 convert 应该是同一个程序。
ImageMagick 的最新版本目前已经是 7.* 以上了。建议安装最新版,因为之前它还暴露过了一个严重漏洞,在最新版本里该漏洞是已经修复了的。它的源码放在 Github 上面维护:https://github.com/ImageMagick。
我的脚型属于前脚掌比较宽的,耐克的鞋里目前发现刺客比较合脚,一图胜千言(图里的B是刺客):
2015年12月至今年6月,我在猫眼做的开发基本都是桌面浏览器项目、B 端产品,技术栈是 Node.js/Koa + Webpack + React.js。从今年7月份开始,趁着一个新的 C 端项目的启动,自己转而投入到移动端 web 开发中。
C 端产品与 B 端产品差异巨大。