logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

动态规划——背包问题

背包问题简而言之:你有一个背包 这个背包有一定的容积 要装入物品进去 不同物品体积不同 价值不同背包的情况有两种 :01背包就是每种物品只有一个选了之后就是1不选就是0 完全背包就是每种物品个数可能有多个装入的情况也有两种:恰好将背包装满的最大物品价值 背包可以不装满的最大价值先研究第一种情况 也就是不需要装满很明显 物品的价值和体积分别要用一个一维数组记录 w、v若是定义dp[i] 从前i个物品

#动态规划#算法
LeetCode-环形链表、环形链表 II

判断是否有环,使用快慢指针,开始时都指向头节点,快指针每次走两部,慢指针每次走一步,如果在走的过程中,慢指针和快指针相同(也就是快指针和慢指针指向的节点的同)那么就说明这个链表是带环链表;若是这个链表代换,那么快慢指针一定不会走向NULL;只会在这个链表里面循环走下去,并且当循环条件允许时都会进环;

文章图片
#leetcode#链表#算法
Linux——线程的同步和互斥

因为线程是共享地址空间的 所以线程会共享大部分资源 没有对资源进程保护 就会出现数据不一致的问题看一个代码 见见数据不一致问题建立四个线程 模拟卖票的过程 当票数大于零 某一个线程运行时 就让票数减减 直到票数小于零 每次打印出线程卖的第几张票看到了结果出现了票数为负数的情况 这就是数据不一致引起的。

文章图片
#开发语言#linux#c++
C++基于websocketpp的多用户网页五子棋项目

大模块划分,各自的功能,如何进行配合协同完成项目分为三个大模块:业务处理(接收客户端的一些请求并且做出响应)、数据管理(当用户请求注册或者登录的时候,业务处理模块收到请求,去数据管理模块进行相关操作)、前端模块(响应yoghurt的页面请求)

文章图片
#c++#开发语言#mysql +3
五种IO模型与非阻塞IO、多路转接select与epoll、Reactor反应堆模式详解

IO永远包含等待和拷贝两个过程,并且等待的时间远远大于拷贝的时间,在实际过程中为了提高IO的效率就需要减少等待的时间。前四种IO都是同步IO,都参与了等待或者拷贝的过程(这里的同步不是进程同步表示先后顺序的,而是表示进程有没有参与这个IO过程,是同步的就说明进程参与了IO过程),而异步IO也应证了这个概念,不关心IO过程,完全交给内核进行等待和拷贝,自己只需要处理即可。select系统调用就是等待

文章图片
#服务器#网络#运维 +1
Linux基础环境开发工具使用

用自己定义的变量代替命令,但是使用时要用$(),echo打印测试是不是能替换echo前面加上@不显示执行的命令,但是非命令的会显示;

文章图片
#linux#服务器
到底了