自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(77)
  • 资源 (1)
  • 收藏
  • 关注

原创 C++网络编程(四)轻量级数据库sqlite3

这里貌似与网络编程的关联度已经不大,属于可选的分支发展方向,鉴于经常遇见需要数据库的情况,这里对轻量级的数据库sqlite3在C++中的相关调用做简单整理。

2023-03-13 23:09:30 587 1

原创 C++网络编程(三)IO复用

多进程/多线程网络服务端在创建进程/线程时,CPU和内存开销很大。因为多线程/进程并发模型,为每个socket分配一个线程/进程。而IO复用采用单个的进程/线程就可以管理多个socket。

2023-03-11 23:45:20 522

原创 C++网络编程(二)并发控制

在网络编程中,要提高整体的运行效率,采用并发执行的方式对大量的数据交互是必不可少的。

2023-03-10 18:10:30 543

原创 C++网络编程(一)本地socket通信

简单描述C++网络通信中,采用socket连接客户端与服务器端的方法,以及过程中所涉及的函数概要与部分函数使用细节

2023-03-09 17:47:42 4154

原创 计算机网络总结

计算机网络简略总结

2023-03-06 23:27:55 467

原创 Linux 简单命令介绍

帮助命令man用来提供在线帮助查看命令信息,权限范围:所有用户格式: man 命令名help用来显示使用命令的一些帮助信息【|为管道,前一个命令的输出作为后一个命令的输入,输出最后一个命令的输出】格式: 命令名 --hlep | moreinfo用来在线浏览全部文档【当看到info上的初始屏幕后,可以通过<?>或者Ctrl+H查看info帮助指南,e.g. Q[退出] 】格式: info 命令名文件命令Linux七种文件类型:普通文件,目录文件,符号链接

2022-06-12 16:20:57 316

原创 Linux进程通信

进程间通信:指在不同进程间传递或交换信息。Linux的三种主要通信方式:管道,套接字,System V IPC。管道:普通管道:半双工,单向传送数据,且只能在同源进程间使用。命名管道:FIFO队列,借助外存解除普通管道只能在同源进程间使用的限制。System V IPC包括:消息队列、信号量和共享内存套接字:分为UNIX域套接字和Internet套接字。信号:不能称之为真正意义上的IPC,只是简单的事件通知,并不能完成数据传输。一种软中断,信号作为进程间通信的一种机制,由一个进程发送给另一个进程。信号的生命

2022-06-12 15:56:46 180

原创 Linux进程控制

进程:正在内存中运行的程序。Linux/Unix中用户可以同时运行多个进程启动进程的两种手段:手动启动和调度启动(计划任务)手动启动:可分为前台进程和后台进程。调度启动:通过at或者cron启动,都是后台进程。正常终止:从main返回;调用exit函数;调用 _exit系统调用。异常终止:被信号终止;调用abort,产生SIGABRT信号。每一个进程都有一个唯一的标识:PID,其为非负整数。三个特殊进程:PID=0的调度进程:内核的一部分,又称交换进程或者系统进程。PID=1的init进程:是内核启动并运行

2022-06-12 15:53:12 533

原创 Linux文件IO操作

​ 文件除了文件内容外,还有一个名字和一些属性,即:“管理信息”,以便于进行管理。文件的属性被保存在文件的索引节点(inode)中。在Unix/Linux文件系统中Inode是文件系统中的一个特殊的数据块,用于保存文件的属性信息,这些属性信息包括:文件使用的设备号、索引节点号、文件访问权限和文件类型、文件的硬链接数、UID、GID、设备文件的设备号、文件大小、包含该文件的磁盘的块大小、文件占用的磁盘块的数、最后访问时间、最后修改时间、文件状态最后改变时间。​ 目录目录的内容主要由:文件名和索引节点号组成

2022-06-09 22:05:15 356

原创 第十一届山东省省赛题解BCDFGHJM

题目B_Build Roads题意:给定一个N个点的无向完全图,iii和jjj之前的边权是gcd(ai,aj)gcd(a_i,a_j)gcd(ai​,aj​),保证数组值随机,求MST(最小生成树)。数据范围:n,L,R,seed(2≤n≤2×105,1≤L≤R≤2×105,1≤seed≤1018)n,L,R,seed (2 \le n \le 2 \times 10^5, 1 \le L \le R \le 2 \times 10^5, 1 \le seed \le 10^{18})n,L,R,se

2022-05-18 18:48:00 364

原创 CodeForces-贪心训练

题目Integers Shop [CodeForces - 1621B]The integers shop sells nn segments. The i-th of them contains all integers from lil_ili​ to rir_iri​ and costs cic_ici​ coins.Tomorrow Vasya will go to this shop and will buy some segments there. He will get all inte

2022-05-06 11:46:22 243

原创 2022天梯L1-L2题解

总结整个天梯赛的赛场体验一般,最开始看的L2-1,也确实因为题目描述过长,失去耐心,立马转至L1开始作答。从第1题到第10题均未卡题,毕竟知识点都差不多门清。但是在第11题,L2-3开始便卡死了,赛场上想了很多,在补题时发现,思路是正确的,但是有些细节也确实没有处理好。同时在WA了三次后,依旧在死磕它,没有去尝试第四题,qwq.主要第四题题目看完也是蒙圈状态,就选择继续做2-3.整体题目不难,就像陈越姥姥在知乎说的,知识没有变,只是出题风格年轻化了。(直接就是阅读理解)。这里给出L1的思路,L2的AC代

2022-05-03 18:10:38 1174

原创 AtCoder 248_CDE

C_Dice Sum题目How many integer sequences of length N,A=(A1,…,AN)N, A=(A_1, \ldots, A_N)N,A=(A1​,…,AN​), satisfy all of the conditions below?1≤Ai≤M(1≤i≤N)1\le A_i \le M(1 \le i \le N)1≤Ai​≤M(1≤i≤N)∑i=1NAi≤K\displaystyle\sum _{i=1}^N A_i \leq Ki=1∑N​Ai​≤K

2022-05-03 00:14:35 514

原创 linux的C开发工具

本文内容:gcc编译器的使用静态库与动态库Make工程管理文件gdb调试工具gcc编译器编译流程:源程序(*.c) => 预处理 => 编译 => 汇编 => 链接 => 可执行文件编译选项:编译选项功能-o指定输出文件,默认:a.out-E仅进行预处理,生成预处理代码(直接输出,可通过-o输出到文件)-S编译到汇编语言,生成汇编代码:*.s-c编译汇编到目标代码,不进行链接,生成目标文件:*.o-g

2022-04-06 20:52:41 4588

原创 Shell编程

Shell编程Shell编程语言为高级程序设计语言,解释型语言Shell的任务:分析命令;处理通配符,重定向,管道和作业控制;搜索命令并执行Linux中常见的Shell脚本:Bourne Shell(/usr/bin/sh或者/bin/sh) Unix标准的shellBourne Again Shell(/bin/bash) Linux标准的shellC ShellzshShell一般由管理员在创建用户时,为用户指定,保存在/etc/

2022-03-25 20:08:30 3773

原创 组合数求解总结

组合数意图计算CabC^b_aCab​的值,此处列举三种常用方法。简单组合计数a,ba,ba,b很小(小于等于3000左右),采用递推的方法,根据公式Cab=Ca−1b−1+Ca−1bC^b_a=C^{b-1}_{a-1}+ C^{b}_{a-1}Cab​=Ca−1b−1​+Ca−1b​,用二维数组C[i][j]C[i][j]C[i][j]表示CijC^j_iCij​。#include<iostream>#define N 2010using namespace std;typed

2022-03-23 15:33:52 597

原创 逆元求解方法

定义当ab=c\frac{a}{b}=cba​=c时,可以看成是a×b−1=ca\times b^{-1}=ca×b−1=c。令x=b−1x=b^{-1}x=b−1,即有a×x=ca \times x=ca×x=c,

2022-03-23 14:11:47 1048

原创 树状数组原理及实现

应用树状数组又称二进制索引树,通过二进制分解划分区间。多用于高效的计算数列的前缀和,在查询前缀和与点更新操作上,其时间复杂度均可在O(log n)下完成。原理树状数组引用了分级管理制度且设置了管理小组,管理小组中的每一个成员都管理一个或多个的连续元素。通过下标进行对数组中连续元素的管理。其逻辑结构表现如图所示:其中数组a代表着数组中的原始数据,数组c表示着前n个元素的和。即c为数组的前缀和。同样,对于每个数组c中的元素值为图中箭头相连的数据之和。前缀和查询例如计算数组中前8个元素的和,即c[

2022-03-19 17:28:26 949

原创 POJ 3321 Apple Tree【树状数组】

题目There is an apple tree outside of kaka’s house. Every autumn, a lot of apples will grow in the tree. Kaka likes apple very much, so he has been carefully nurturing the big apple tree.The tree has N forks which are connected by branches. Kaka numbers t

2022-03-19 17:21:38 1046

原创 POJ 3067 Japan【树状数组】

题目Japan plans to welcome the ACM ICPC World Finals and a lot of roads must be built for the venue. Japan is tall island with N cities on the East coast and M cities on the West coast (M <= 1000, N <= 1000). K superhighways will be build. Cities on

2022-03-19 17:01:59 157

原创 POJ 2352 Stars【树状数组】

题目Astronomers often examine star maps where stars are represented by points on a plane and each star has Cartesian coordinates. Let the level of a star be an amount of the stars that are not higher and not to the right of the given star. Astronomers want

2022-03-19 16:31:18 451

原创 字符串【C/C++函数操作】

字符串博文简述C/C++中常见库函数的操作。概念字符串即由char型数组存储一组字符的表达形式,在C++中存在string类型对字符串进行存储与操作。字符串由’\0’作为结束的标志。输入方法char str[120] = {0};1.scanf("%s",str);//采用scanf可使用%s读取一段字符串,字符串读入遇到空白则结尾,自动添加'\0'2.gets(str);//在C语言中已经废弃的函数,此函数并不安全。3.//自定义readline函数int readline(char s

2022-02-05 21:59:58 450

原创 C语言指针【常见类型】

指针指针是很多人头疼的部分,但它的应用无处不在,是编程中不可或缺的一环。无论是在C语言中,还是是C++,亦或是Java,Python中,都有它的应用,各具的名字不同罢了。比如C++中的引用,它的实质和指针相同,均是***将一个地址内容赋值给变量,通过地址去访问对应内存的内容***。指针是一种***数据类型***,比如说int ,long ,short ,float, double,char…,这些都是数据类型,他们都能存储对应的数据。那么指针存放什么呢?int k = 10;//k是一个整型数据,存储

2022-01-26 00:56:18 3794

原创 HDU 1007 Quoit Design[最小距离]

题目Have you ever played quoit in a playground? Quoit is a game in which flat rings are pitched at some toys, with all the toys encircled awarded.In the field of Cyberground, the position of each toy is fixed, and the ring is carefully designed so it can

2022-01-26 00:28:08 163

原创 POJ 2048 Anagram Groups[字符串哈希与排序]

题目World-renowned Prof. A. N. Agram’s current research deals with large anagram groups. He has just found a new application for his theory on the distribution of characters in English language texts. Given such a text, you are to find the largest anagram

2022-01-24 23:28:05 231

原创 POJ 2443 Set Operation [bitset]

题目You are given N sets, the i-th set (represent by S(i)) have C(i) element (Here “set” isn’t entirely the same as the “set” defined in mathematics, and a set may contain two same element). Every element in a set is represented by a positive number from 1

2022-01-22 01:00:49 610

原创 Java 实习七

实习五.泛型与集合框架实验目的(1)掌握Socket通信(2)掌握UDP数据报通信(3)掌握网络编程中的多线程应用实验步骤步骤1创建工程,工程名以学号姓名方式命名“2020013766沈泉宏”步骤2为每道实习题目建立对应的包,work1,work2,work3,work4步骤3按规范书写源代码,注意编码格式,如:缩进,命名规范,各类之间依赖关系等步骤4规范书写实习报告步骤5实现与测试,代码以附件形式提交,同时贴上必要的代码运行截图步骤6及时总结心得体会与备忘实验过程实验

2021-12-22 15:15:07 135

原创 JAVA 实习六

实习六.多线程实验目的(1)掌握Java多线程的概念和实现(2)掌握使用继承Thread产生线程(3)实现Runnable接口产生线程(4)掌握wait-notify机制实验步骤步骤1创建工程,工程名以学号姓名方式命名“2020013766沈泉宏”步骤2为每道实习题目建立对应的包,work1,work2,work3步骤3按规范书写源代码,注意编码格式,如:缩进,命名规范,各类之间依赖关系等步骤4规范书写实习报告步骤5实现与测试,代码以附件形式提交,同时贴上必要的代码运行截图

2021-12-22 12:46:59 130

原创 JAVA 实习五

实习五.泛型与集合框架实验目的(1)掌握泛型中参数类型的声明和使用(2)掌握List实现类的主要操作(3)掌握Map实现类的主要操作实验步骤步骤1创建工程,工程名以学号姓名方式命名“2020013766沈泉宏”步骤2为每道实习题目建立对应的包,work1,work2,work3步骤3按规范书写源代码,注意编码格式,如:缩进,命名规范,各类之间依赖关系等步骤4规范书写实习报告步骤5实现与测试,代码以附件形式提交,同时贴上必要的代码运行截图步骤6及时总结心得体会与备忘实验过程

2021-12-12 18:38:56 262

原创 POJ 1192 最优连通子集

题目众所周知,我们可以通过直角坐标系把平面上的任何一个点P用一个有序数对(x, y)来唯一表示,如果x, y都是整数,我们就把点P称为整点,否则点P称为非整点。我们把平面上所有整点构成的集合记为W。定义1 两个整点P1(x1, y1), P2(x2, y2),若|x1-x2| + |y1-y2| = 1,则称P1, P2相邻,记作P1~P2,否则称P1, P2不相邻。定义 2 设点集S是W的一个有限子集,即S = {P1, P2,…, Pn}(n >= 1),其中Pi(1 <= i &l

2021-11-22 23:26:23 128

原创 JAVA 实习四

实习三.输入输出流实验目的(1)掌握输入输出流的用法:文件字节流、文件字符流、缓冲流、对象流;(2)掌握File对象的用法(3)掌握Serializable接口的使用实验步骤步骤1创建工程,工程名以学号姓名方式命名“2020013766沈泉宏”步骤2为每道实习题目建立对应的包,work1,work2步骤3按规范书写源代码,注意编码格式,如:缩进,命名规范,各类之间依赖关系等步骤4规范书写实习报告步骤5实现与测试,代码以附件形式提交,同时贴上必要的代码运行截图步骤6及时总结心

2021-11-22 20:43:42 101

原创 HDU 5698 瞬间移动

题目有一个无限大的矩形,初始时你在左上角(即第一行第一列),每次你都可以选择一个右下方格子,并瞬移过去(如从下图中的红色格子能直接瞬移到蓝色格子),求到第n行第m列的格子有几种方案,答案对1000000007取模。Input多组测试数据。两个整数n,m(2≤n,m≤100000)n,m(2≤n,m≤100000)n,m(2≤n,m≤100000)Output一个整数表示答案Sample Input4 5Sample Output10题目分析采用递推的方法,可以发现横

2021-11-21 22:02:11 378

原创 POJ 1845 Sumdiv

题目Consider two natural numbers A and B. Let S be the sum of all natural divisors of A^B. Determine S modulo 9901 (the rest of the division of S by 9901).大意给定两个自然数A,B。找出ABA^BAB的所有因子之和,最后结果对9901取模。InputThe only line contains the two natural numbers A

2021-11-21 21:06:37 213

原创 JAVA 实习三

实习三.Swing图形界面实验目的(1)掌握Java的swing界面开发步骤:1.生成JFrame子类作为界面;2.设计中间容器,为中间容器设置布局;3.添加组件;4.为组件添加事件处理。(2)熟悉使用JDK_API进行软件开发实验步骤步骤1创建工程,工程名以学号姓名方式命名“2020013766沈泉宏”步骤2为每道实习题目建立对应的包,work1,work2步骤3按规范书写源代码,注意编码格式,如:缩进,命名规范,各类之间依赖关系等步骤4规范书写实习报告步骤5实现与测试

2021-11-14 23:49:50 77

原创 Java 实习二

实验2.异常处理-常用实用类实验目的(1) 掌握Java的异常处理机制及相关实现方法(2) 熟悉使用JDK_API进行软件开发实验步骤步骤1创建工程,工程名以学号姓名方式命名“2020013766沈泉宏”步骤2为每道实习题目建立对应的包,work1,work2,work3,work4步骤3按规范书写源代码,注意编码格式,如:缩进,命名规范,各类之间依赖关系等步骤4规范书写实习报告步骤5实现与测试,代码以附件形式提交,同时贴上必要的代码运行截图步骤6及时总结心得体会与备忘实验

2021-10-30 01:27:20 88

原创 PTA Replacement Selection

题目When the input is much too large to fit into memory, we have to do external sorting instead of internal sorting. One of the key steps in external sorting is to generate sets of sorted records (also called runs) with limited internal memory. The simples

2021-10-12 20:26:13 284

原创 PTA 完全二叉树的层序遍历

题目一个二叉树,如果每一个层的结点数都达到最大值,则这个二叉树就是完美二叉树。对于深度为 D 的,有 N 个结点的二叉树,若其结点对应于相同深度完美二叉树的层序遍历的前 N 个结点,这样的树就是完全二叉树。给定一棵完全二叉树的后序遍历,请你给出这棵树的层序遍历结果。输入输入在第一行中给出正整数 N(≤30),即树中结点个数。第二行给出后序遍历序列,为 N 个不超过 100 的正整数。同一行中所有数字都以空格分隔输出在一行中输出该树的层序遍历序列。所有数字都以 1 个空格分隔,行首尾不得

2021-09-30 15:26:38 1839

原创 PTA 深入虎穴

题目著名的王牌间谍 007 需要执行一次任务,获取敌方的机密情报。已知情报藏在一个地下迷宫里,迷宫只有一个入口,里面有很多条通路,每条路通向一扇门。每一扇门背后或者是一个房间,或者又有很多条路,同样是每条路通向一扇门…… 他的手里有一张表格,是其他间谍帮他收集到的情报,他们记下了每扇门的编号,以及这扇门背后的每一条通路所到达的门的编号。007 发现不存在两条路通向同一扇门。内线告诉他,情报就藏在迷宫的最深处。但是这个迷宫太大了,他需要你的帮助 —— 请编程帮他找出距离入口最远的那扇门。输入输入

2021-09-27 21:16:32 431

原创 PTA 二叉搜索树的最近公共祖先

题目.给定一棵二叉搜索树的先序遍历序列,要求你找出任意两结点的最近公共祖先结点(简称 LCA)。输入输入的第一行给出两个正整数:待查询的结点对数 M(≤ 1 000)和二叉搜索树中结点个数 N(≤ 10 000)。随后一行给出 N 个不同的整数,为二叉搜索树的先序遍历序列。最后 M 行,每行给出一对整数键值 U 和 V。所有键值都在整型int范围内。输出对每一对给定的 U 和 V,如果找到 A 是它们的最近公共祖先结点的键值,则在一行中输出 LCA of U and V is A.。但如

2021-09-11 23:58:26 4584 2

原创 PTA 特殊堆栈

题目堆栈是一种经典的后进先出的线性结构,相关的操作主要有“入栈”(在堆栈顶插入一个元素)和“出栈”(将栈顶元素返回并从堆栈中删除)。本题要求你实现另一个附加的操作:“取中值”——即返回所有堆栈中元素键值的中值。给定 N 个元素,如果 N 是偶数,则中值定义为第 N/2 小元;若是奇数,则为第 (N+1)/2 小元。输入输入的第一行是正整数 N(≤105)。随后 N 行,每行给出一句指令,为以下 3 种之一:Push keyPopPeekMedian其中 key 是不超过 10510^

2021-09-11 19:20:31 921

简易电路图生成系统——【初学Qt制作】

学生制作,初学Qt纯原创,只能画固定图形,包含简单的类关系,极为简单可稍作参考,有任何疑问均可留言联系

2021-08-27

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除