自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 收藏
  • 关注

原创 Django框架开发学习实录

介绍了如何安装Django,创建Django项目和App,配置数据库,并实现用户登录功能。

2024-02-07 11:04:18 932

原创 C++实现UDP可靠传输(二)

本文实现了一个简单的基于UDP协议的可靠传输,采用GBN算法的流量控制机制和New RENO算法的拥塞控制机制,更加适用于真实的网络场景。

2022-12-01 16:04:14 4090 3

原创 C++实现UDP可靠传输(一)

本文实现了一个简单的基于UDP协议的可靠传输,采用停等机制的流量控制方式,实现的功能主要有:三次握手、四次挥手、单向传输、差错检测、确认重传等。

2022-11-13 11:06:23 6738 4

原创 配置web服务器+编写简单页面+分析交互过程

使用IIS配置和C++ socket编程两种方式配置简单的web服务器,编写简单html界面,通过wireshark捕获交互过程并分析。

2022-10-26 21:06:04 1643

原创 C++实现流式socket聊天程序

本文设计并实现了使用流式socket完成双人聊天程序,支持随时发送和接收消息。

2022-10-13 15:11:27 2939 2

原创 操作系统笔记1:知识回顾和操作系统概述

回顾了操作系统前期课程的相关知识,介绍了操作系统概述。

2022-09-26 16:10:57 214

原创 Win10环境下的Ubuntu安装与配置

介绍了在Win10环境下Ubuntu的安装与配置,实现VS Code远程连接Ubuntu,并配置LaTex。

2022-09-22 20:26:34 2438 1

原创 大数据实训笔记10:hive的应用

介绍了hive的详细应用,包括数据定义、数据操作和HQL查询。

2022-07-10 11:04:37 550

原创 大数据实训笔记9:hive的安装部署

介绍了hive的详细安装部署步骤,包括hive安装、docker安装、mysql安装部署,以及hive元数据配置到MySQL的方法。

2022-07-07 15:51:35 373

原创 大数据实训笔记8:hbase

介绍了hbase的安装部署及集群的启动和停止,演示了hbase的基本shell操作和API应用。介绍了hbase和mapreduce集成的环境配置与几个案例。最后介绍了hbase优化。

2022-07-07 09:22:59 440

原创 大数据实训笔记7:kafka

介绍了kafka的基本架构和安装部署,实现了kafka的基本命令操作及API应用。

2022-07-05 09:49:03 149

原创 大数据实训笔记6:zookeeper

介绍了zookeeper的特点与安装部署,重点介绍其客户端命令操作与监听节点上下线的案例。

2022-07-04 14:57:21 166

原创 大数据实训笔记5:hadoop配置优化

之前的实验中,我们会发现使用hadoop时经常出现资源不足等问题。我们可以对hadoop的配置进行优化,以解决这些问题。可以看到,MaxHeapSize只有944MB。而当初创建hadoop101时,我们分配给它4GB的内存。我们需要配置hadoop-env.sh,更改默认设置。在配置文件中,找到下面两行,删掉前面的#注释符,并修改。再次按照上......

2022-07-04 08:46:05 719

原创 大数据实训笔记4:mapreduce

介绍了mapreduce的核心思想,序列化与反序列化,并给出多个实际应用案例,包括过滤、排序、分区、组合 、Join、在MySql中的读写操作。

2022-07-03 20:02:35 1198

原创 大数据实训笔记3:hdfs

介绍了hdfs的命令操作与客户端操作。介绍了hdfs客户端操作的环境配置以及如何创建maven工程。

2022-07-01 16:18:26 624

原创 大数据实训笔记2:hadoop完全分布式模式

介绍了hadoop的完全分布式模式,重点是三台客户机的集群配置与启动,并介绍了一个简单案例。

2022-07-01 15:30:35 575

原创 大数据实训笔记1:hadoop环境搭建及单机模式

hadoop入门,介绍了详细的hadoop环境搭建步骤以及单机模式的两个简单案例。

2022-07-01 11:40:57 1182 1

原创 数据库系统笔记9:并发控制与故障恢复

介绍了数据库中的并发控制与故障恢复,即如何保持数据库中数据的完整性。

2022-06-09 09:23:13 809

原创 数据库系统笔记8:查询过程

介绍了数据库中的查询计划,包括逻辑查询计划和物理查询计划。

2022-05-12 15:17:02 240

原创 数据库系统笔记7:关系代数

Relational Algebra 关系代数介绍了关系代数以及其与SQL语句的互换

2022-05-12 09:02:01 1375 2

原创 数据库系统笔记6:模式设计与求精

如何进行模式设计与求精,包含各种范式的介绍,以及如何按照范式要求进行分解,使分解后的关系模式是无损分解且保持函数依赖关系。

2022-04-28 11:04:25 778

原创 数据库系统笔记5:SQL

基本操作创建表create table Students ( stu_id int, primary key, //声明主键 stu_name char(20), not null, //声明非空 sex char(1), birth date);删除表drop table Students;drop table Students if exists;alter更改表结构alter table Stude

2022-04-14 20:15:48 495

原创 数据库系统笔记4: ER模型

基本概念Entity(实体):对象,如学生、教师,用方形表示 Entity Set(实体集):类 一个实体集必须至少有一个非主键的属性 或者它是多对一/多对多关系中的“多” Attribute(属性):如学号、姓名,用圆形表示 Relationship(关系):两个实体间的关系,用棱形表示关系注意在“一”的实体集合内可以有空的,如one-one中的b,如果实体集合内每一个元素都有且仅有一个实体与它对应,则该“一”用圆箭头表示子类继承关系:用三角形表示 子类继承父类

2022-04-14 16:52:57 2118

原创 数据库系统笔记3: 索引

Conventional IndexDense Index 稠密索引必须为每个原始记录的key值建立索引 索引中的每个key值按顺序排列Sparse Index 稀疏索引为每个数据块只建立一个索引项 索引中的每个key值按顺序排列 顺序存储的文件没有必要为每个key值都建立索引 如果要查找在原始记录中不存在的key值,一定要搜索到底层的文件Multi-level Index 多级索引为索引再建立索引Duplicate keys 重复值如何创建索引稠密索引:对每个原始记录都建

2022-04-13 20:14:28 207

原创 数据库系统笔记2: 数据存储

关系模型基础基本概念Attribute(属性):列,存放的数据只能是基本数据类型 Tuple(元组):行 Schema(模式):如Student (id, name, major)键Superkey(超键):属性的集合,属性下的数据没有重复值 Candidate key: (候选键):最小的超键 Primary key(主键):管理员选择的候选键,在模式中通过下划线来标明 Foreign key(外键):参照另外一张表的主键的属性,如选修(学号,课号,成绩)的学号来自学生表,课号来.

2022-04-13 19:36:02 269

原创 Python解决八皇后问题

问题描述如何能在 8*8 的国际象棋棋盘上放置八个皇后,使得任何一个皇后都无法直接吃掉其他的皇后?为了到达此目的,任两个皇后都不能处于同一条横行、纵行或斜线上。设计思路采用回溯算法解决八皇后问题。即按行落子,第一行落子后,遍历第二行,寻找是否有可落子之处,如果无法落子,则返回第一行,调整第一行落子的位置。如此迭代,直至所有可能都遍历结束。此方法不是盲目地枚举,而是考虑冲突的可能,在性能上大大优于穷举法。核心代码注意,以下代码只是逻辑编程,并不涉及如判断能否落子这样的函数,需要读者自行编写

2022-04-11 14:51:05 2792

原创 蒙特卡洛树算法实现mini AlphaGo Reversi

本文代码参考蒙特卡洛树实现黑白棋设计思想采用蒙特卡洛树算法,即采用选择-拓展-模拟-反向传播,获取下棋的近似最优解。代码内容from copy import deepcopyimport mathimport randomclass AIPlayer: """ AI 玩家 """ def __init__(self, color): """ 玩家初始化 :param color: 下棋方,'X' - 黑

2022-04-11 14:19:47 1549 3

原创 数据库系统笔记1: 绪论

数据库概述DBMS (Data Base Management System): 数据库管理系统 Metadata: 元数据,关于数据描述的数据数据模型层次模型:使用树状结构表示实体和实体之间的联系网状模型:使用有向图表示实体和实体之间的联系关系模型:使用表格表示实体和实体之间的联系关系模式术语Relation: 关系表 Attribute: 属性(列) Tuple: 元组(行) Schema: 模式 ➡️ 表1 =(属性1,属性2,属性3)两种数据语言DDL (D

2022-04-07 20:40:17 2641

原创 信安数学基础编程题

整除Eratosthenes筛选法求素数const int range=1000000; //求素数的范围int *p=new int[range+1]; //存储该范围内所有数的数组void eratosthenes(int *p) { //Eratosthenes筛选法 for(int i=2;i<=ceil(sqrt(range));i++) for(int j=2*i;j<=range;j+=i) //将i的倍数都赋成0 p

2022-03-31 21:15:56 629

原创 Java笔记:利用套接字实现简单的网络编程

使用UDP协议的套接字可以发送和接收数据包,通过发送和接收消息,可以实现相应的网络编程功能。例如,联机下棋时,本地用户下棋后,给对方发送一条消息,对方即可知道本地用户下棋了,并显示出下棋结果。需要注意的是,虽然在同一台电脑上编程运行,但我们需要将双方想象成在不同电脑上运行(事实上也是这样的),双方不能够直接调用对方的函数方法,而是永远通过发送和接收消息来实现交互。以下将展示简单的利用套接字实现的局域网通信。public class UDPServer extends JFrame { /

2021-12-26 18:11:02 457

原创 Java笔记:图形用户界面

界面JFrame创建对象声明一个对象JFrame fram=new JFrame();直接继承JFrame类public class View extends JFrame { ......}常用方法add(new JButton()); //添加组件setTitle("title"); //设置标题setSize(1200,900); //设置大小setDefaultCloseOperation(3); //关闭setLocationRelative

2021-12-26 18:02:54 739

原创 Java笔记

基本知识引用和对象新建一个对象class Tank { int level;}public class Assignment { public static void main(String[] args) { Tank t1=new Tank(); Tank t2=new Tank(); t1.level=9; t2.level=47; }}引用在赋值,对象不赋值t1=t2; //此时t1

2021-12-21 22:12:25 420

原创 数据结构笔记9: 图

图的基本概念图的定义G=(V,E)用线(边)连接起来的顶点(节点)的集合 V:顶点的有限集合 E:边的有限集合基本概念无向边 有向边 关联至:被指向 关联于:指向 无向图:所有边都是无向边的图 有向图:所有边都是有向边的图 完全图:边数达到最大的图 n(n-1)/2 稀疏图:有很少边的图 稠密图:有较多边的图 加权有向图、加权无向图:每条边赋予一个权重 ➡️网络 子图:G=(V,E) ,G'=(V',E'), V'是V的子集,E'是E的子集➡️G'是G的子图 顶...

2021-12-11 16:36:41 865

原创 数据结构笔记8: 搜索树

二叉搜索树(BST)BST定义所有的关键字只能出现一遍 左子树所有节点的关键值小于根节点,右子树所有节点的关键值大于根节点 左右子树也都是二叉搜索树 ➡️递归索引二叉搜索树每个节点记录一个索引值(左子树大小+1)➡️节点在以它为根的子树中的排名 如何找到第k元? 如何确定一个节点的关键值是整棵树的第几大?BST搜索算法从根节点开始将key与节点值比较 如果key小于节点值,进入左子树,如果大于节点值,进入右子树 递归,直到找到或子树为空停止平均查找长度成功:(需要比

2021-11-24 16:22:55 964

原创 Java实现CD出租销售商店

实现功能管理会员:增加、删除、查找、充值、输出 管理CD:增加、删除、查找、输出 主要功能:出租、归还、销售、统计收入实现思路Disk类:存储每个CD的信息,如ID、名字、价格、种类、库存等。 DiskBook类:作为一个CD仓库,实现CD的整体调度。 User类:存储每个会员的信息,如ID、名字、存款、VIP等级等。注意,每一个会员有一个DiskBook,用来存储会员借的CD。 UserBook类:作为一个会员登记本,实现与会员有关的功能的整体调度。 Owner类:作为商店的主人,拥

2021-11-23 11:38:29 848

原创 Java实现文本框五子棋

实现模式View-Control-Model实现功能接收用户通过命令行输入下棋的位置 判断下棋位置是否合法,并输出每一次下棋的结果 判断哪一方胜利:从当前下棋的位置开始判断,垂直、水平、左斜线、右斜线是否有五个连续的同色棋子 悔棋:Model中记录上一个棋子的位置,悔棋则将该位置置为空即可 结束游戏,并判断退出或重新开始View.javaimport java.io.BufferedReader;import java.io.IOException;import java.i

2021-11-23 11:19:59 3469

原创 数据结构笔记7: 优先队列

优先队列ADT优先队列的定义线性表描述最大优先队列无序线性表:插入在表头(表尾),删除时要查找最大优先级元素 有序线性表:删除时删除表头(表尾),插入时要查找应在的合法位置堆及堆排序堆的定义最大树:每个节点的值都大于或等于其子节点(若存在)的值 最大堆:是一棵最大树,同时是一棵完全二叉树堆的描述特殊的完全二叉树:一维数组有效描述 n个元素,高度template<class T>class MaxHeap{}插入操作:要检查是否符合最大堆的定义 删

2021-11-10 16:25:43 499

原创 数据结构笔记6: 二叉树和其他树

树的一般定义树线性表、表:不适合描述层次结构数据 树(tree):是一个非空的优先元素的集合,其中有一个特殊的元素称为根,余下的元素组成树的若干子树 递归的思想:每棵树=根+若干棵子树,每棵子树=子树的根+若干棵它的子树相关术语元素:节点 根节点与子树的根节点的关系:边 边的两端:父母(parent)&孩子(children) 相同父母的节点:兄弟(sibling) 叶节点(终端节点):没有孩子的节点 根节点(root):没有父亲的节点 层(level):根为1,根的孩

2021-11-03 16:24:15 474

原创 数据结构笔记5: 散列

散列字典字典的定义有序表 能实现随机访问和顺序访问 重要的操作方式:按关键字访问 需要注意的问题:重复关键字线性表描述template<class E, class K> class SortedChain {public: SortedChain() {first = 0;} ~SortedChain(); bool IsEmpty() const { return first == 0; } int Leng

2021-10-30 17:38:45 503

原创 数据结构笔记4: 栈和队列

堆栈的定义堆栈(stack)是一个线性表,其插入和删除操作都在表的同一端进行,这端被称为栈顶(top),另一端被称为栈底(bottom) 后进先出堆栈的描述公式化描述继承线性表 template<class T>class Stack : private LinearList <T> { //线性表的尾部作为栈顶public: Stack(int MaxStackSize = 10): LinearList<T> (MaxStackSize

2021-10-30 17:11:37 459

空空如也

空空如也

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

TA关注的人

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