TypeScript单向链表实现
TS单向链表实现 ======== 功能 --- * 链表初始化 * 添加节点元素 * 插入、追加节点元素到指定位置 * 删除节点元素 * 一次性打印链表所有元素 * 反转链表元素,反向遍历链表 * 合并两个有序的链表,合并后仍然有序 需要维护的类属性 -------- * `length`:链表长度 * `head`:头节点 实现思路 ---- * **使用对象作...
51工具盒子
TS单向链表实现 ======== 功能 --- * 链表初始化 * 添加节点元素 * 插入、追加节点元素到指定位置 * 删除节点元素 * 一次性打印链表所有元素 * 反转链表元素,反向遍历链表 * 合并两个有序的链表,合并后仍然有序 需要维护的类属性 -------- * `length`:链表长度 * `head`:头节点 实现思路 ---- * **使用对象作...
? 编译选项 ------- ### 自动编译文件 编译文件时,使用 `-w`指令,TS编译器会自动监视文件的变化,并在文件发生变化的时候对文件进行重新编译 示例: `tsc xxx.ts -w` ### 自动编译整个项目 如果直接使用tsc命令,则可以自动将当前项目下所有的ts文件编译为js文件 但是能直接使用tsc命令的前提时,要先在项目根目录下创建一个TS配置...
TS实现环形队列 ======== **吐槽一下,这个是按照Java的定长数组为前提的,然而TypeScript数组是不定长的,再加上原生具有push和shift方法,其实这个实现完全没有必要。。但最近正好学数据结构,就当练习了** 的类型</li> <li&...
<h2>柯里化 {#%E6%9F%AF%E9%87%8C%E5%8C%96}</h2> <p>当函数有多个参数的时候我们对函数进行改造并返回一个函数,只传入部分参数,只到函数执行完毕<code>f(1,2,3) ==> f(1)(2)(3)</code></p> <ul> <...
Pointfree {#pointfree} ---------------------- Point-free是一种编程风格,这是一种在函数里面实际上没有写任何东西的函数编写方式,这种方式可以将一个函数与其他函数一起生成一个新的函数。我们可以把数据处理的过程定义成与数据无关的合成运算,不需要用到代表数据的那个参数,只要把简单的运算步骤聚合成一起,在使用这种模式之前我们需要定...
<h2>纯函数 {#%E7%BA%AF%E5%87%BD%E6%95%B0}</h2> <h3>纯函数的概念 {#%E7%BA%AF%E5%87%BD%E6%95%B0%E7%9A%84%E6%A6%82%E5%BF%B5}</h3> <ul> <li> <p>纯函数: 相同的输入始终会得到相同...
<h2>函数组合 {#%E5%87%BD%E6%95%B0%E7%BB%84%E5%90%88}</h2> <ul> <li>纯函数和了柯里化很容易写出洋葱代码 <code>h(g(e(x)))</code></li> <li>函数组合可以让我们把细粒度的函数重新组合生成一个新的函数...
<h1>函数试编程范式 {#%E5%87%BD%E6%95%B0%E8%AF%95%E7%BC%96%E7%A8%8B%E8%8C%83%E5%BC%8F}</h1> <h2>为什么学习函数式编程 {#%E4%B8%BA%E4%BB%80%E4%B9%88%E5%AD%A6%E4%B9%A0%E5%87%BD%E6%95%B0%E5%BC%8...