- 博客(61)
- 收藏
- 关注
原创 错过ordi别错过ordii
欧易链接:https://okx.com/join/64653088。领取网址https://ordii.net/NBU4J。错过ordi别错过ordii。ordii免费领取200枚。
2024-01-02 18:10:07
467
原创 python并发
可以保证线程安全,避免多个线程同时修改数据造成的数据竞争问题。在实际开发中,如果需要多个线程同时访问共享资源,我们可以使用。使用线程池可以避免频繁地创建和销毁线程,提高代码的执行效率。原理:新建县城系统需要分配资源,种植需要回收资源,如果可以宠用线程,可以减去新建,终止的开销。语句块中执行取钱操作,如果余额不足就打印提示信息,否则就扣除余额。在主线程中,我们创建了10个线程,模拟多个人同时取钱。来加锁,以保证同一时刻只有一个线程可以执行取钱操作。模块中提供的一个函数,用于获取已经完成的。
2023-05-06 01:02:08
248
原创 py_rabbitmq
和direct一样,只不过改改模式和routingkey。消息确认机制:确认消费了,移除队列。服务端挂掉了, 声明队列时做持久化。根据关键字不同交给不同的人。*:匹配一个单词(单词)- #:匹配多个单词。
2023-04-29 23:17:13
505
原创 django
ORM是一种将对象和关系数据库之间的数据进行映射的技术,它将数据库中的表映射为Python中的类,将表的行映射为类的对象,将表的列映射为类的属性。在上面的示例中,通过User模型类获取名为Tom的用户,再通过Permission模型类获取view_users权限,并通过user_permissions属性将权限分配给用户。例如,下面是一个简单的序列化器:views.py。在上面的示例中,我们定义了一个名为MyModelSerializer的序列化器,并指定了Meta类中的model属性为MyModel。
2023-04-29 19:40:39
806
原创 计算机网络-数据链路层
(A->D)帧太短,很快发送完毕(小于争用期),A不在侦听信道,后序发送碰撞,A以为自己已经成功发送,所以要避免这种现象,传统以太网10Mbps,以太网规定51.2us为争用期长度,故最小帧长=512bit=64B :即以太网发送数据时,前64B没有发生冲突,后序也不会冲突,抢占了信道。3.发送过程中,一直监听,若一直没有检测到碰撞,顺利把帧发送完,若碰撞,终止发送,发送拥塞信号让所有用户知道。:忙,继续监听,冲突,随机时间后监听,重复【其他主机都在监听,一旦空闲,就会都去争用,就会冲突】
2023-03-15 00:09:57
699
原创 计算机网络-物理层
不用建立连接,线路动态分配,提高线路利用率,提供多目标服务(一个报文同时发送给多个地址)通信时延小(数据直达),有序,无冲突(没有争用物理信道),实时(随时通信),控制简单。建立连接时间长,线路独占,灵活性差(通路任意一点出现故障,重新连接)对设备要求高,要求能够准确的恢复信号,接收端要有严格的同步系统。信息速率,比特率,单位时间传输的二进制码元个数(比特数)仅需要一条信道,只有一个方向的通信,没有反向的交互。存储转发,单位报文(携带源地址,目标地址等信息)波特率,单位时间传输的码元个数,单位Baud,
2023-03-14 21:48:58
407
原创 操作系统-内存管理
文章目录内存管理功能程序装入和链接覆盖与交换连续分配管理方式非连续分配方式基本分页存储管理方式多级页表分段存储管理(和分页有一点类似)段页式虚拟存储技术内存管理功能内存空间的分配与回收:由OS实现主存储器空间的分配和管理,让程序员摆脱存储转换的麻烦地址转换: 多道程序中,程序逻辑地址和物理地址不可能一致,所以需要提供地址变换管理功能,吧逻辑地址转换为相应的物理地址内存空间的扩充: 利用虚拟存储技术或者自动覆盖技术,从逻辑上扩充内存存储保护: 保证各个作业在各自的内存空间内运行,互不干扰程序装
2021-09-21 13:47:34
688
原创 LRU算法 双链表+hashmap
一,概要1.LRU是Least Recently Used的缩写,即最近最少使用页面置换算法,是为虚拟页式存储管理服务的,是根据页面调入内存后的使用情况进行决策了。由于无法预测各页面将来的使用情况,只能利用“最近的过去”作为“最近的将来”的近似,因此,LRU算法就是将最近最久未使用的页面予以淘汰。代码(貌似有点问题)import java.util.HashMap;import java.text.DecimalFormat;import java.text.NumberFormat;publ
2021-09-01 01:05:09
273
原创 poj_3252数位dp
组合数学c(n, r) = c(n, n - r); c(5, 3) = c(5, 2);c(n+1, m) = c(n, m) + c(n, m - 1); c(7, 3) = c(6, 3) + c(6, 2);c(n, n - k) = c(n - 1, k) + c(n - 1, k - 1); c(10, 10 - 6) = c(9, 6) + c(9, 5);#include<iostream>#include<cstring>//组合数学/*c(n, r
2021-09-01 00:58:25
121
原创 poj_1276二进制优化背包问题
多重背包有N种物品,第i种物品的体积为Ci,价值是Wi,但是每种物品的数量都是有限的,为ni。现在有容量为V的背包,请你放入若干物品,使获得的价值尽量大。朴素算法:把N种物品逐个拆分,得到Σni个物品,则原问题可转化为01背包求解。这样做的时间复杂度为O(V×Σn)。或者是在枚举种类的过程中枚举个数k,但时间复杂度也是O(V×Σn)。二进制优化我们可以考虑二进制的思想,将第i种物品通过二进制拆分成若干件物品,比如20件物品可以用1,2,4,8,5这5个数进行组合并相加,就能得到20以内的任何数
2021-09-01 00:54:47
138
1
原创 dijistra算法
一,简介dijistra算法是求从源点开始u到其他点的最短路径问题。前提条件是带权值的边。权值为正数。1.将每个点的距离设为无穷大,彼此都不连通。将这些点的集合设为S.2.另一个集合为V。从源点s开始,距离设为0,放到集合V中。3.设每条边是<u,v>。则通过dist(v) = min{dis(v),dist(u) + l(u,v)} 进行松弛操作。选取最小代价的点,放到集合V中,直到集合S中的元素被拿光结束。二,代码void dijistra1(int u){ int i
2021-09-01 00:43:43
578
原创 a^b%m
一,简介计算A^B;比如2^100;100 = 64 + 32 + 4;对应二进制(1100100)2^100 = 2^64 + 2^32 + 2^4;(a+b)% M = (a%M + b%M)%M#define ll long longll pow(ll a, ll b){ ll base = a, r = 1; while(b){ if(b & 1) r = (r * base) % mod; base = (base * bas
2021-09-01 00:23:33
114
原创 矩阵快速幂(求斐波那契)
一,简介线性代数中有:**也就表明:**图中所表示的可以理解为 f(x+1)=f(x)+f(x-1)即斐波那契数列的通式,若要求项数较大的数n斐波那契数,那么只用将矩阵A进行n-1次幂运算#include<iostream>#include<cstdio>#define Mod 10000using namespace std;struct Mtr{ int f[2][2]; void init1(){ //构造矩阵 f[0][0] = f[0][1]
2021-09-01 00:15:47
275
原创 拓扑排序
一,简介拓扑排序是针对有向无回路图的。对有向无回路图G=(V,E)进行拓扑排序后,结果为该图所有顶点的一个先行序列,满足如果G包含有向边(u , v ),则在该序列中, u 就出现在 v 的前面(如果图存在回路,就不可能存在这样的线性序列)。 【算法导论】有向无回路图用于说明事件发生的先后次序,比如完成某个工程就会存在一个次序关系,先要完成这个工作,然后才能完成那个工作。二,解决思路(1)在有向图中选一个没有前驱的顶点且输出之(2)从图中删除该顶点和所有以它为尾的边。如果有向图中找不到一个没有
2021-09-01 00:09:33
204
原创 poj1789——kuskal最小生成树
#include<iostream>#include<cstring>#include<algorithm>#define MAX 2002000using namespace std;int parent[2002], n;char str[2002][10];struct node{ int s, e, v; }g[MAX];int distance(char a[], char b[]){ int count = 0; for(int i
2021-08-31 23:54:10
74
原创 最小生成树(Prime)
一,最小生成树构造(prime算法)dis[]数组:当前的树到其他各个顶点的边的最小值,dis[5]表示在当前构造的树当中,距离顶点5的距离最小值;visit[];表示哪些点已经加入到树中mp[][];邻接矩阵存图path[];path[5]表示最终的最小生成树中到5这个点的前驱;相当于记录了最小生成树的边随意选择一个顶点,构成一棵树,并初始化dis数组为该顶点到其他顶点的距离,到自己的距离为0从dis中选择最小的且没有加入到树的顶点记为v,将该顶点加入到树中visit[v]=true,然后更
2021-08-31 23:50:41
465
原创 线索二叉树根据任意结点P找前驱和后继
二叉树结构typedef struct threadNode{ /* data */ ElemType data; threadNode *lchild, *rchild; /* tag = 0 指针指向孩子 tag = 1 线索指针 */ int ltag, rtag;} threadNode, *threadTree;一,先序线索二叉树1.前驱先序遍历是 (根左右), 我们是通过子节点的线索来找根
2021-08-28 22:41:20
3232
原创 线索二叉树的实现C++
一,简介二,代码#include <iostream>using namespace std;typedef char ElemType;typedef struct threadNode{ /* data */ ElemType data; threadNode *lchild, *rchild; /* tag = 0 指针指向孩子 tag = 1 线索指针 */ int ltag, rt
2021-08-28 19:46:54
271
原创 使用Navicat连接远程Linux服务器出错2013-Lost connection to MYSQL server at ‘reading for initial communication
出这个问题目前只有这个方法我成功了,其他的我暂时没有成功1. 点击编辑连接或者新建连接2.连接名随便取一个,主机名一定是localhost;用户名和密码是你mysql对应的用户名与密码3. 点击ssh主机是远程服务器ip用户名和密码是Linux的用户名和密码4.点击连接测试...
2021-07-03 14:37:20
580
原创 windows终端连接Linux服务器+SCP命令相互上传下载文件(夹)
连接方式ssh 用户名@公网ip然后输入密码windows终端使用scp命令从远程服务器上下载文件(文件夹)到windows scp Linux用户名@公网ip:上传的文件目录 你要下载到windows的路径 以下面为例,lighthouse是我的远程Linux用户名 81.68.89.18是公网ip 把远程Liunx服务器上的lighthouse用户下file文件夹下的test.sql下载到 windowsD盘1文件夹 然后输入密码 scp lighth.
2021-07-03 11:09:28
2149
原创 ‘https://www.springframework.org/schema/beans/springbeans.xsd‘
BUG描述'https://www.springframework.org/schema/beans/springbeans.scd', 原因为 1) 无法找到文档; 2) 无法读取文档; 3) 文档的根元素不是 <xsd:schema>解决https改为http
2021-07-03 11:06:03
85
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人