草庐IT

数据结构与算法学习之链表(上)

目录链表链表是啥链表的类型链表的特性结点指针特殊的结点(单链表/双向链表)特殊的结点(循环链表/双向循环链表)链表的操作插入单链表循环链表双向链表循环双向链表删除单链表循环链表双向链表循环双向链表查询单链表循环链表双向链表循环双向链表链表在实际开发中的注意事项(本段引自数据结构与算法之美)第一种情况第二种情况单链表与双向链表的区别小结链表与数组的性能表现数组链表数组与链表在插入,删除,查询复杂度比较链表的应用案例如何通过链表的方式实现LRU缓存淘汰算法缓存缓存淘汰策略思路编程语言如何实现链表参考资料链表链表是啥和数组属于同一中结构,都是线性表结构;但和数组不同的是,数组需要一组连续的内存空间来

构建自己的语言工具包——关于编程语言,我们需要关注什么?

在业界拥有众多高级编程语言的今天,如何系统化构建自己的编程语言知识库,这是本文的核心。@目录应用领域开发效率生态环境工程管理性能安全性跨平台能力执行模式命令行编程范式面向对象并发编程网络编程泛型编程元编程类型系统时间处理字符串处理错误处理内存管理系统调用其他应用领域这门语言的应用领域主要在哪里?常用于业务开发还是系统开发?如C/C++/Rust主要用于系统编程,Java/Go主要用于业务开发,Python/Shell主要用于脚本开发,Python也用于机器学习。开发效率这门语言的语法是否友好,,标准库是否健壮,支持的数据结构如何?生态环境这门语言工具链是否齐全,生态是否强大?编译工具/测试工具

构建自己的语言工具包——关于编程语言,我们需要关注什么?

在业界拥有众多高级编程语言的今天,如何系统化构建自己的编程语言知识库,这是本文的核心。@目录应用领域开发效率生态环境工程管理性能安全性跨平台能力执行模式命令行编程范式面向对象并发编程网络编程泛型编程元编程类型系统时间处理字符串处理错误处理内存管理系统调用其他应用领域这门语言的应用领域主要在哪里?常用于业务开发还是系统开发?如C/C++/Rust主要用于系统编程,Java/Go主要用于业务开发,Python/Shell主要用于脚本开发,Python也用于机器学习。开发效率这门语言的语法是否友好,,标准库是否健壮,支持的数据结构如何?生态环境这门语言工具链是否齐全,生态是否强大?编译工具/测试工具

Logseq001笔记类--视频悬浮插件--Helium

这是我准备新开的学习记录系列之一今天写一个插件的介绍吧—— Helium ——视频悬浮插件youtube/b站/本地视频都可以导入主要功能就是你在看视频时,要记一些学习笔记,随着不断往下写,视频会出现被挡住的情况。这个时候Helium就能帮上大忙!首先点击右上角三个点点,打开插件市场下载Helium,安装好了之后再导入视频;导入完成后,再鼠标右键单击下图这里,选择startfloat就好啦!或者三击选中视频链接后,按⬆️+control+H也可以打开float。   如果你要在记笔记的时候:1.暂停/播放:option+command+K2.前进/后退10s:option+command+L(

Logseq001笔记类--视频悬浮插件--Helium

这是我准备新开的学习记录系列之一今天写一个插件的介绍吧—— Helium ——视频悬浮插件youtube/b站/本地视频都可以导入主要功能就是你在看视频时,要记一些学习笔记,随着不断往下写,视频会出现被挡住的情况。这个时候Helium就能帮上大忙!首先点击右上角三个点点,打开插件市场下载Helium,安装好了之后再导入视频;导入完成后,再鼠标右键单击下图这里,选择startfloat就好啦!或者三击选中视频链接后,按⬆️+control+H也可以打开float。   如果你要在记笔记的时候:1.暂停/播放:option+command+K2.前进/后退10s:option+command+L(

【Visual Leak Detector】简介

说明使用VLD内存泄漏检测工具辅助开发时整理的学习笔记。目录说明1.工具简介2.工具的官网链接3.工具的帮助文档4.工具的下载地址5.工具的Git地址1.工具简介VisualLeakDetector简称VLD,是Windows平台下用于C/C++代码内存泄漏检测的开源工具,使用起来比较简单,配置好环境后包含头文件,就可以在运行时自动检测是否存在内存泄漏,并在指定位置(控制台或者文本文件)输出检测报告。该工具最初由DanMoulding开发,但是后面2.0版本的特性都由ArkadiyShapkin实现,在版本迭代历史中看到,最新的版本是2017年10月17日发布的v2.5.1,开源遵循LGPL-

【Visual Leak Detector】简介

说明使用VLD内存泄漏检测工具辅助开发时整理的学习笔记。目录说明1.工具简介2.工具的官网链接3.工具的帮助文档4.工具的下载地址5.工具的Git地址1.工具简介VisualLeakDetector简称VLD,是Windows平台下用于C/C++代码内存泄漏检测的开源工具,使用起来比较简单,配置好环境后包含头文件,就可以在运行时自动检测是否存在内存泄漏,并在指定位置(控制台或者文本文件)输出检测报告。该工具最初由DanMoulding开发,但是后面2.0版本的特性都由ArkadiyShapkin实现,在版本迭代历史中看到,最新的版本是2017年10月17日发布的v2.5.1,开源遵循LGPL-

1.0 十大经典排序算法

本系列算法整理自:https://github.com/hustcc/JS-Sorting-Algorithm同时也参考了维基百科做了一些补充。排序算法是《数据结构与算法》中最基本的算法之一。排序算法可以分为内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。常见的内部排序算法有:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。用一张图概括:点击以下图片查看大图:关于时间复杂度平方阶(O(n2))排序各类简单排序:直接插入、直接选择和冒泡排序。线性对数阶(O(nlog2n))

1.0 十大经典排序算法

本系列算法整理自:https://github.com/hustcc/JS-Sorting-Algorithm同时也参考了维基百科做了一些补充。排序算法是《数据结构与算法》中最基本的算法之一。排序算法可以分为内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。常见的内部排序算法有:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。用一张图概括:点击以下图片查看大图:关于时间复杂度平方阶(O(n2))排序各类简单排序:直接插入、直接选择和冒泡排序。线性对数阶(O(nlog2n))