草庐IT

JavaEE初阶

全部标签

初阶数据结构之---导论,算法时间复杂度和空间复杂度(C语言)

说在整个初阶数据结构开头数据结构其实也学了挺长时间了,说着是要刷题所以才没怎么去写关于数据结构方面的内容。数据结构作为计算机中及其重要的一环,如果不趁着假期系统整理一下着实可惜,我这里构想的是将初阶数据结构和高阶数据结构,分别分成两个部分,初阶数据结构呢,大概有以下内容本篇:导论,算法的时间复杂度和空间复杂度线性表专题---顺序表线性表专题---单链表(不带头双向不循环链表)线性表专题---双向链表(带头双向循环链表)栈和队列二叉树和堆排序专题后期会根据具体内容拆分修改初阶数据结构中我会用C语言来实现不同的结构在高阶数据结构中,将会用C++来介绍二叉搜索树,AVL树,红黑树,哈希等到这里,不再

C++初阶:容器适配器priority_queue常用接口详解及模拟实现、仿函数介绍

介绍完了stack和queue的介绍以及模拟的相关内容后:C++初阶:容器适配器介绍、stack和queue常用接口详解及模拟实现接下来进行priority_queue的介绍以及模拟:文章目录1.priority_queue的介绍和使用1.1priority_queue的初步介绍1.2priority_queue的使用1.3进一步补全介绍2.仿函数/函数对象讲解3.模拟priority_queue文件规划和一览3.1模拟priority_queue(priority_queue.h)3.2测试(test.cpp)1.priority_queue的介绍和使用1.1priority_queue的初

【JavaEE进阶】 拦截器(DispatcherServlet)源码简介

文章目录🌴前言🎋了解DispatcherServlet源码🚩初始化🚩处理请求🍃适配器模式🚩适配器模式的定义🚩适配器模式角色🚩适配器模式应用场景⭕总结🌴前言上一篇博客我们使用了拦截器,那么拦截器是如何实现拦截的呢?接下来我们将从源码来看一下是如何实现拦截的。🎋了解DispatcherServlet源码当我们启动服务,进行访问时,我们查看日志,可以看到如下情况当Tomcat启动之后,有⼀个核心的类DispatcherServlet,它来控制程序的执行顺序.所有请求都会先进到DispatcherServlet,执行doDispatch调度⽅法.如果有拦截器,会先执⾏拦截器preHandle()方法的

【C语言】指针初阶

正文开始之前,我们要记住一个东西就是:地址=指针目录一、指针的解释二、指针变量和地址1、取地址操作符2、指针变量和解引用操作1、指针变量2、拆解指针类型3、解引用操作符4、注意事项3、指针变量的大小4、指针的解引用5、void*指针三、指针的运算1、指针±整数2、指针-指针3、指针的关系运算四、野指针1、野指针形成的原因2、指针越界访问3、指针指向的空间释放五、const修饰指针1、const修饰变量2、const修饰指针变量一、指针的解释通俗来讲就是某一数据的位置。因为数据的存储是需要空间的,这个空间会有一个地址,指针就是用来存放这个地址的,以便于后续快速的访问二、指针变量和地址1、取地址操

【C++】模版初阶

目录泛函编程函数模版概念格式原理实例化模版函数的匹配原则类模板定义格式泛函编程如何实现一个通用的交换函数呢?voidSwap(int&left,int&right){ inttemp=left; left=right; right=temp;}voidSwap(double&left,double&right){ doubletemp=left; left=right; right=temp;}voidSwap(char&left,char&right){ chartemp=left; left=right; right=temp;}使用函数重载虽然可以实现,但是有几个不好的地方:1.重载的函

【JavaEE】_传输层协议UDP与TCP

目录1.开发中常见的数据组织格式1.1XML1.2JSON1.3Protobuf2. 端口号3.UDP协议4. TCP协议4.1特点4.2 TCP报文格式4.3TCP可靠性机制4.3.1确认应答机制4.3.2超时重传机制4.3.2.1丢包的两种情况4.3.2.2重传时间4.3.3连接管理机制4.3.3.1三次握手建立连接4.3.3.2四次挥手释放连接4.3.3.3建立连接与释放连接的总过程4.4TCP效率提高机制4.4.1滑动窗口协议4.4.1.1  数据传输示意图4.4.1.2 滑动窗口4.4.1.3 超时重传机制4.4.1.3.1 第一种情况:ACK丢失4.4.1.3.2 第二种情况:数据

初阶数据结构之---顺序表和链表(C语言)

引言-线性表线性表:线性表(linearlist)是n个具有相同特性的数据元素的有限序列。线性表是一种在实际中广泛使用的数据结构。线性表在逻辑上是线性结构,也就是说是连续的一条直线。但在物理上并不一定是连续的。线性表在物理上存储时,通常以数组和链式结构的形式存储。我们今天的主角,顺序表和链表,其实都是线性表,当然线性表不止包含这两个线性表:顺序表链表栈队列字符串……再次声明:线性表的逻辑结构是线性的,物理结构不一定是线性顺序表概念及结构顺序表是用一段物理地址连续的存储单元依次存储数据元素的线性结构,一般情况下采用数组存储。在数组上完成数据的增删查改。顺序表一般可以分为:1.静态顺序表:使用定长

【JavaEE】_基于TCP实现网络通信

目录1.TCP的SocketAPI1.1TCP的socketapi的两个关键类1.2面向字节流的TCP1.3UDP与TCP的区别与联系2.基于TCP实现回显服务器2.1客户端TCPEchoClient2.1.1代码2.2服务器TCPEchoServer2.2.1单线程版代码2.2.2部分代码解释2.2.3单线程版代码改进逻辑2.2.4多线程版代码2.2.5多线程版代码改进逻辑2.2.6线程池优化版代码2.3多线程版程序通信测试1.TCP的SocketAPI1.1TCP的socketapi的两个关键类1.ServerSocket,供服务器使用,使用这个类绑定服务器端口;2.Socket,既会给服

C++初阶:适合新手的手撕vector(模拟实现vector)

上次讲了常用的接口:C++初阶:容器(Containers)vector常用接口详解今天就来进行模拟实现啦文章目录1.基本结构与文件规划2.空参构造函数(constructor)4.基本函数(size(),capacity(),resize(),reserve())4.增删改查(push_back,pop_back,insert,erase)5.在实现Insert和erase时迭代器失效问题6.重载[]7.完善构造函数7.1vector(size_typen,constvalue_type&val=value_type());7.2利用迭代器进行构造7.3拷贝构造8.重载=9.析构函数1.基本

C++初阶:容器适配器介绍、stack和queue常用接口详解及模拟实现

介绍完了list类的相关内容后:C++初阶:适合新手的手撕list(模拟实现list)接下来进入新的篇章,stack和queue的介绍以及模拟:文章目录1.stack的初步介绍2.stack的使用3.queue的初步介绍4.queue的使用5.容器适配器5.1含义5.2STL标准库中stack和queue的底层结构6.模拟stack和queue文件规划和一览6.1模拟stack(stack.h)6.2模拟queue(queue.h)1.stack的初步介绍stack是一种容器适配器,专门用在具有后进先出操作的上下文环境中,其删除只能从容器的一端进行元素的插入与提取操作。stack是作为容器适配