From 851c0ecb6d3c819b6882ba8e5bb9bd61e0de6386 Mon Sep 17 00:00:00 2001 From: lmj01 Date: Fri, 11 Aug 2023 17:34:42 +0800 Subject: [PATCH] update --- cpl/data.structure/hash.md | 17 +++++++++++++++++ cpl/lua.md | 7 +++++++ dev-note/cmake.md | 3 ++- index/computerScience.md | 20 +++++++++++++------- web/index.md | 14 ++++++++++++++ 5 files changed, 53 insertions(+), 8 deletions(-) create mode 100644 cpl/lua.md diff --git a/cpl/data.structure/hash.md b/cpl/data.structure/hash.md index 4fd03f7..22f6f3d 100644 --- a/cpl/data.structure/hash.md +++ b/cpl/data.structure/hash.md @@ -46,3 +46,20 @@ h(key) = _LOW(n x (A x key % 1)), 取小数部分是A x key % 1 = A x key - _L 当发生冲突时,在源地址新建一个链表,把相同的结果以链表节点存储起来。 HashMap + +### [Swisstable](https://abseil.io/about/design/swisstables#swiss-tables-design-notes) + +通过相邻地址法来解决hash冲突,一个平台的内存结构,能够提高CPU cache命中率 + +在key上执行hash函数,得到一个64位的hash值,并分高7位和低57位 +- 低57位用于定位桶中slot的位置 +- 高7位用于在control byte中解决hash冲突 + +hash捅中每个slot对应一个byte的控制字节,高1位表示状态,低7位用于存储hashcode的高7位 +- 未使用 0xff +- 已删除 0x80 +- 在使用 0x00~0x7f + + +## 参考 + diff --git a/cpl/lua.md b/cpl/lua.md new file mode 100644 index 0000000..2611287 --- /dev/null +++ b/cpl/lua.md @@ -0,0 +1,7 @@ +# [lua](http://www.lua.org/) + +## 参考 +- [Quickly view and test GLSL fragment shaders while allowing lua scripting to modify uniforms ](https://github.com/nevilc/ShaderPreview) +- [luafxbuilder is a proof of concept test to use lua as effect file format primarily for shaders](https://github.com/pixeljetstream/luafxbuilder) +- [lua-cpp一个用C++11封装lua的库](https://gitee.com/linuxtongyong/lua-cpp-wrapper) +- [LuaChat is an example of how to combine modern C++ and Lua 5.3/5.4. In particular, LuaChat implements a library of C++ primitives called actions.](https://github.com/bluwireless/LuaChat) \ No newline at end of file diff --git a/dev-note/cmake.md b/dev-note/cmake.md index 2bfdbe4..1fda14b 100644 --- a/dev-note/cmake.md +++ b/dev-note/cmake.md @@ -29,4 +29,5 @@ MSBuild.exe INSTALL.vcxproj /p:Configuration=release - [官网文档](https://cmake.org/cmake/help/latest/index.html) - [tutorial](https://cmake.org/cmake/help/latest/guide/tutorial/index.html) - [cmake常用命令](https://zhuanlan.zhihu.com/p/315768216) -- [CMake-tutorial中文教程](https://www.cnblogs.com/lnlin/p/16576418.html) \ No newline at end of file +- [CMake-tutorial中文教程](https://www.cnblogs.com/lnlin/p/16576418.html) +- [CMake入门笔记系列(一):CMake编译过程详解 | Micro CMake for C++](https://zhuanlan.zhihu.com/p/620839692) \ No newline at end of file diff --git a/index/computerScience.md b/index/computerScience.md index 5185967..359aff5 100644 --- a/index/computerScience.md +++ b/index/computerScience.md @@ -2,15 +2,16 @@ ## Programing Language -### [python](../cpl/python.md) +- [python](../cpl/python.md) +- [rust](../cpl/rust.md) +- [C](../cpl/c.md) +- [Cplusplus](../cpl/cplusplus.md) +- [lua](../cpl/lua.md) -### [rust](../cpl/rust.md) +### 数据结构 -### [C](../cpl/c.md) - -### [Cplusplus](../cpl/cplusplus.md) - -- []() +- [hash](../cpl/data.structure/hash.md) +- [LRU](../cpl/data.structure/LRU.md) ## Dev @@ -53,6 +54,7 @@ - [Vulkan C++ examples and demos ](https://github.com/SaschaWillems/Vulkan) - [Vulkan Guide](https://github.com/KhronosGroup/Vulkan-Guide) - [Vulkan Tutorial ](https://vulkan-tutorial.com/) + - [vulkan-renderer,Inexor is an open-source project which combines modern C++ with Vulkan API.](https://github.com/inexorgame/vulkan-renderer) ### UI @@ -79,6 +81,10 @@ - [PAG Portable Animated Graphics](https://pag.art/) - [3d model file](../cg/modelFile.md) +## DataStructure + +### Hash + ## Web - [Web notes](../web/index.md) diff --git a/web/index.md b/web/index.md index 53cd5a8..ca990bc 100644 --- a/web/index.md +++ b/web/index.md @@ -28,3 +28,17 @@ - [github](https://github.com/usablica/intro.js) - [Bootstrap Tour](https://bootstraptour.com/) - [github](https://github.com/sorich87/bootstrap-tour) + +### 富文本编辑器 + +- [Trusted WYSIWYG editor很简洁,没有图片](https://github.com/tinymce/) + - [TinyMCE](https://github.com/tinymce/tinymce) + +- [过时的YUI is a free, open source JavaScript and CSS library for building richly interactive web applications. ](https://clarle.github.io/yui3/) + - [github yui3 ](https://github.com/yui/yui3) + +- [The WYSIWYG Editor of tomorrow available today](https://ckeditor.com/) + - [CKEditor 5 is an ultra-modern JavaScript rich-text editor with MVC architecture, a custom data model, and virtual DOM](https://github.com/ckeditor/ckeditor5) + +- [Your powerful rich text editor.](https://quilljs.com/) + - [github](https://github.com/quilljs/quill) \ No newline at end of file