随笔分类 -  造轮子

摘要:sklearn是一个开源的机器学习库,支持不同种类的机器学习算法,并且提供了许多质量良好的数据集。假如我们想要得到一组环形数据集,借助sklearn的包很轻易就可以实现,不过换个角度思考,我们自己动手是否也可以生成一组数据,使之在散点图上环状分布;借助C++的random头文件以及一点高中数学知识, 阅读全文
posted @ 2023-11-23 16:02 ChebyshevTST 阅读(425) 评论(0) 推荐(2) 编辑
摘要:大家都知道队列是可以用数组来模拟的,可以先开辟一段定长的数组空间,然后分别使用两个变量head和tail来代指队列的头和尾,从而维护整个队列,相信到这里大家都比较熟悉。不过这种做法是有弊端的,比如说下图这种情况 假设经过不断地增删元素,Head和Tail已经来到了数组最后两个位置,这时候整个队列中只 阅读全文
posted @ 2023-11-11 20:35 ChebyshevTST 阅读(359) 评论(0) 推荐(4) 编辑
摘要:总所周知,Python语言当中的list是可以存储不同类型的元素的,对应到现代C++当中,可以用std::variant或者std::any实现类似的功能。而Python官方的实现当中用到了二级指针,不过抛开这些,我们也可以自己设计一个list的架构,实现多类型值的存储容器。 下图是自己实现的lis 阅读全文
posted @ 2023-11-02 15:33 ChebyshevTST 阅读(326) 评论(0) 推荐(2) 编辑
摘要:大数结构是一种常见的数据结构,在C++当中,我们常用vector来动态实现。除此之外,我们也可以仿照vector的思路,自己实现内存的动态分配,当内存容量达到上限时,用C-api realloc进行内存的重新分配。 #define REQUIRE2(p, q) assert((p) || (q)) 阅读全文
posted @ 2023-10-27 23:11 ChebyshevTST 阅读(338) 评论(0) 推荐(1) 编辑
摘要:std::variant介绍:en.cppreference.com/w/cpp/utility/variant 通过泛型模板(仅提供了int, double, string三种类型的存储),实现了append, pop, front, back, size等方法,并且通过重载运算符实现了对负数索引 阅读全文
posted @ 2023-09-08 21:12 ChebyshevTST 阅读(35) 评论(0) 推荐(0) 编辑
摘要:原本是朴素的遍历写法,后面改为mmap后速度提升飞快(大部分时候一秒以内可以出结果)。可以用于比较两个文件内容是否相同,包括图片也可以(图片用open函数打开后是一堆乱码,相当于比较乱码)。Talk is cheap, show me your code。 #include <iostream> # 阅读全文
posted @ 2023-08-18 22:09 ChebyshevTST 阅读(122) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示