从零开始的tinyhttpd项目 从零开始的tinyhttpd项目学习顺序(更新中)前言虚拟机安装及配置前言TinyWebServer是c++服务器方向常见的一个项目,但该项目涉及的内容太多。由于本人接触linux网络编程不深,所以准备从tinyhttpd项目开始学起,因为该项目代码量不大,而且涉及模块少,对于不熟悉的虚拟机配置,linux配置和命令都有很大的练习作用,故选用该项目先试手一下。虽然说是从零开始,但还需要了解基本c/c++语法,linux简单命令及网络编程基础概念即可。虚拟机安装及配置本人系统win10,所以安装
力扣Hot100题单个人计划c++版(五) 力扣Hot100题单个人计划c++版(一)力扣Hot100题单个人计划c++版(二)力扣Hot100题单个人计划c++版(三)力扣Hot100题单个人计划c++版(四)力扣Hot100题单个人计划c++版(五)刷题链接:力扣Hot 100每日一题,每日一更,白板手写。力扣Hot 10081.打家劫舍 III82.比特位计数83.前 K 个高频元素84.字符串解码85.除法求值86.根据身高重建队列87.分割等和子集88.路径总和 III89.找到字符串中所有字母异位词90.找到所有数组中消失
力扣Hot100题单个人计划c++版(四) 力扣Hot100题单个人计划c++版(一)力扣Hot100题单个人计划c++版(二)力扣Hot100题单个人计划c++版(三)力扣Hot100题单个人计划c++版(四)刷题链接:力扣Hot 100每日一题,每日一更,白板手写。力扣Hot 10061.课程表62.实现Trie(前缀树)63.数组中第k个最大元素64.最大正方形65.翻转二叉树66.回文链表67.二叉树的最近公共祖先68.除自身以外数组的乘积61.课程表11.3打卡拓扑排序,还是待补吧。有点难写。62.实现Trie(前
力扣Hot100题单个人计划c++版(三) 力扣Hot100题单个人计划c++版(一)力扣Hot100题单个人计划c++版(二)刷题链接:力扣Hot 100每日一题,每日一更,白板手写。力扣Hot 10041.二叉树的层序遍历41.二叉树的层序遍历10.11打卡层序遍历很基础的算法了,按照每层返回一个vector的话,一开始想到用两个队列循环取每一层和下一层,然后在转成vector,当然题解更巧妙的做法是记住每层的大小即可。class Solution {public: vector<vector<int&
力扣Hot100题单个人计划c++版(二) 力扣Hot100题单个人计划c++版(一)刷题链接:力扣Hot 100每日一题,每日一更,白板手写。力扣Hot 10020.全排列20.全排列数组元素不重复,且都在-10~10之间。简单递归即可。class Solution {public: vector<vector<int>> ans; int vis[25]={0}; const int k=11; void dfs(const vector<int>&
力扣Hot100题单个人计划c++版(一) 刷题链接:力扣Hot 100每日一题,每日一更,白板手写。1.两数之和:暴力就不写了,哈希判断。class Solution {public: vector<int> twoSum(vector<int>& nums, int target) { unordered_map<int,int> hashmap; for(int i=0;i<nums.size();i++){ auto i
分布式入门 分布式入门(更新)前言分布式概述前言小白一枚,大三开了这分布式计算这门课,对本课程很感兴趣,但由于网上入门资料太少,个人也是在摸索阶段。个人非常想完成MIT6.824的课程和实验。但暂时能力不足以及时间不充裕,挖个坑待补。所以暂时学习入门的一些内容,以便后面不会卡很多进程学习额外课程。分布式概述...
软件工程个人笔记 软件工程个人笔记仅作个人整理,期末背答案用。软件工程导论第六版答案见:软件工程导论(第六版)课后习题答案章节第1章 软件工程学概述第2章 可行性研究第3章 需求分析第4章 形式化说明技术第5章 总体设计第6章 详细设计第1章 软件工程学概述1.1 软件生命周期各阶段任务是什么?软件生命周期由软件定义,软件开发和运行维护三个时期组成。每个时期又分为若干阶段。软件定义时期:问题定义、可行性研究、需求分析。开发时期:总体设计、详细设计、编码和单元测试、综合测试。运行维护时期:软件维护。
java核心技术卷I(第十版)个人笔记 java核心技术卷I(第十版)个人笔记本人有c++功底,故只记录与c++不同的一些方法。本书为java核心技术卷I(第十版)。第1,2章环境等及10-12章图形化界面部分不提。章节第三章 java的基本程序结构设计第四章 对象和类第三章 java的基本程序结构设计3.2注释稍有不同,文档注释以/**开头,*/结尾。3.3数据类型char型需注意Unicode字符,\u开头,注释中主意C:\users也会产生语法错误,因为\u后需跟4个16位整数。boolean型和整型无法转换。3
HDOJ1627-Krypton Factor 本题用dfs构造字符串,如何巧妙的判断是否有重复字符串呢。实际上还是dp思想,因为前cur-1个字符是合法的,只需要判断加入第cur后是否合法即可。因此从第cur位到中间位尝试比较前面相等长度字符串即可。鉴于新手容易写错回溯条件发下源码:#include<iostream>#include<stdio.h>#include<string.h>#include<algorithm>#include<map>#include<que
HDOJ1015-Safecracker优化版 纯暴力搜索是可以过的。但要求答案是最大的字典序,显然先排序后搜索可以一遍求出答案后就返回。但新手写回溯会出种种bug,最经典莫过于不知道如何返回而陷入死循环。这里给出一个参考代码:#include<iostream>#include<stdio.h>#include<string.h>#include<algorithm>#include<map>#include<queue>#include<string>
python调用MRMR提取特征实验Demo(机器学习实验四) 本文参考:mRMR特征选择算法(feature_selection)的使用python中使用mRMR实验要求:对于d维的trunk’s data,即两类样本,每类样本的均值分别为协方差矩阵相同,均为单位矩阵,仿真这组数据,其中d为100,每类数据的样本数为n;谈谈理想情况下(即n充分大)的这组数据,从d=100个特征中选出k个特征的结果是{1,2,3,…,k}的合理性;试用mRMR算法对这组数据进行特征选择,如从d=100个特征中选出k=10个。通过实验,给出当n相对k取很大时(比如10
DBSCAN算法进行细胞类型聚类 著名的小鼠转录数据库。原理和实现参考:单细胞转录组数据分析|| scanpy教程:预处理与聚类有关dbscan的算法演示有个网站可视化地对参数距离和中心点个数演示:Visualizing DBSCAN Clustering文件夹中共包含5个以逗号分隔的文本文件,每个文本文件包含小鼠乳腺组织中一种特定类型的细胞的基因表达水平,以矩阵形式存储。简单来讲每行是一个特征,每列是一个样本,每个值表示表达情况,0.0表示没有表达,数据无负值。其中五份数据文件的样本表示一类。具体要求:简单就两个:对2万个
svm线性和非线性画图 数据是.mat文件所以需要用scrpt.io导入。导入后是dict格式,我们取出数据集和标签集即可。然后用np.flatten()函数将二维的标签集变成一维。load_plane1 = os.path.join(os.getcwd(), 'MLA2_data1.mat') # mat文件路径 plane1 = sio.loadmat(load_plane1) # 使用scipy读入mat文件数据 # print(plane1) # print(type(plane1)) #
k-mean实验 没啥好说的,原理简单实现简单。主要观察kmeans算法对三个图的测试情况。图一肯定是能分出来的,用欧氏距离迭代中心点是没有问题的。图2图3是非凸形状,所以kmean就会差一点。源代码:import numpy as npimport matplotlib.pyplot as pltdef kmeans(data, n, k): # 获取4个随机数 rarray = np.random.random(size=k) # 乘以数据集大小——>数据集中随机的4个点
遗传算法求解模版(两元) 参考:用Python实现遗传算法遗传算法详解 附python代码实现遗传算法的原理及实现都不是很难,这里只是为了好调参给出一个统一的类来修改参数。本实验要求求max f(x1,x2)=21.5+x1∗sin(4∗PI∗x1)+x2∗sin(20∗PI∗x2)max f(x_{1} ,x_{2} )= 21.5+x_{1}* sin(4*PI*x_{1} )+x_{2}* sin(20*PI*x_{2} )max f(x1,x2)=21.5+x1∗sin(4∗PI∗x1)+x2∗sin(2
白话三种基于协同过滤算法的推荐 最近答辩需要讲解这三种算法,写起来倒是不难,毕竟已经是上世纪的古董算法,原理和实现已经非常成熟。但怎么让每个人一听就懂我还是组织了半天语言的。原理大家都懂,但是可能不知道如何表达和或者不知道其中内涵。我会举三个简单例子白话叙述这三种算法。这里假设我们的推荐系统是电影推荐系统。1.基于用户的推荐:用户a看过c电影,而看过电影c的还有用户c,所有我们把用户c看过的其他电影推荐给用户a。即看过这部电影的人还看过什么电影。2.基于物品推荐:用户c看过电影a,而看过a的用户都看过电影c,所有我们把电影c