自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 C++一点基本知识

C++中两种类型的表达式左值指的是内存的位置表达式,它可以在等号左边或者右边。右值是值内存中某个位置存储的值,它只可以出现在等号右边。

2021-11-30 12:43:38 482

原创 C++拷贝构造函数和移动构造函数

再过两天我就要去字节实习了,本来自己的技术栈是java,但是实习部门的技术栈是C++和python,于是我不得不重拾C++。C++是我本科刚开始学校教(自学)的,可能学的不够,对这两个构造函数没有印象,于是今天就查了查,总结一下。看别人写的说移动构造函数和移动构造函数是C++11之后添加的。顾名思义,拷贝构造函数指的是将一个对象或者变量的值拷贝一份副本,这个副本和原来的就脱离关系,原来的对象或者指针指向的地址空间的内容改变了,不影响副本内存里的值,也就是说是深拷贝。而移动构造函数就是把原来变量或者指

2021-11-29 16:47:16 764 1

原创 二分法细节

二分法的细节之处二分法查找模板查找数组中是否存在某一个数相信算法题做多的同学们,一般遇到原始数据跟有序挂钩的题目,首先会想到的是使用二分法来进行解题,但是在使用二分法的过程中,总感觉使用的不是那么熟练,毕竟二分法虽然算法本身简单,但是其实现的某些细节让很多同学抓狂,很可能直接导致对二分法望而却步,今天就从二分法的三个例子里探究一下这些细节的。二分法查找模板int binarySearch(int[] nums, int target) { int low = 0; int high =

2021-11-26 09:46:45 475

原创 常见的设计模式

常见的设计模式单例模式饿汉模式懒汉模式懒汉模式+synchronized懒汉模式+双重校验模式工厂模式简单工厂模式工厂方法适配器模式装饰器模式代理模式不变模式单例模式在某些情况下,整个程序运行过程中只允许出现类的一个实例,但又经常频繁销毁和创建的对象,尤其是一些重量级对象,此时我们只需要创建一个对象实例,比如全局缓存,浏览器中的window对象等,单例模式只保证一个类仅有一个实例,并提供它的全局访问方法。饿汉模式饿汉模式,即目标对象在不使用的时候就创建出来class HungrySingleton

2021-11-18 21:45:26 480

原创 计算机网络

计算机网络计算机网络体系TCP/UDP的特点三次握手四次挥手tcp连接与断开时,客户端与服务端状态TCP滑动窗口:启用来实现流量控制。TCP可靠传输TCP流量控制TCP拥塞控制TCP连接的建立步骤HTTPS协议HTTP状态码创建的状态码URL与URI的区别HTTP协议与TCP,IP协议的关系:如何理解HTTP协议的无状态:什么HTTP长连接,短连接Session与Cookie计算机网络体系五层协议应用层:为特定应用程序提供数据传输服务,如HTTP,DNS,SMTP等,数据单位是报文。传输层:

2021-11-05 10:56:28 91

原创 二叉树的前序遍历,中序遍历,后序遍历的迭代方法

二叉树的前序遍历,中序遍历,后序遍历的迭代方法。//中序遍历 public static void midVisit(BTNode root){ Stack<BTNode> stack=new Stack<>(); while(!stack.isEmpty()||root!=null){ while(root!=null){ stack.add(root); root=root.left;

2021-11-03 10:43:17 85

原创 常见的排序算法

这段时间刷题总结的排序算法,由于自己是练习,基本没有注释package com.mzz;public class Sort { public static void main(String[] args) { int[] nums=new int[]{11,4,28,6,32,42,34,15,65,23,56,3,87,95,34,1}; //冒泡排序 //Main.bubbleSort(nums); //选择排序

2021-10-29 00:02:06 77

原创 LeetCode常见题目以及解法(由于是是自己写的,有个别题目只写了思路,没写过程,因为思路写了,应该没啥问题的,还有就是基本没有注释)

package com.mzz;import java.util.ArrayDeque;import java.util.ArrayList;import java.util.Arrays;import java.util.Deque;import java.util.HashMap;import java.util.HashSet;import java.util.Iterator;import java.util.LinkedList;import java.util.List;im

2021-10-28 23:58:37 279

原创 遗传算法示例

遗传的概念:遗传算法是模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型,是一种通过模拟自然进化过程搜索最优解的方法。遗传算法的特点:对于搜索算法的共同特征有首先组成一组候选解。依据某些使用性条件测算这些候选解的适用度。根据适应度保留某些候选解,放弃其他候选解。对保留的候选解进行某些操作,形成新的候选解。由于遗传算法是搜选算法的一种,因此具有以上特点,另外遗传算法还有自身的特有特点:遗传算法是从问题解的束集(多个候选解)而不是单个解开始,这是与传统优化算法的最

2021-10-28 00:57:33 1674

原创 群体智能优化算法介绍

群体智能优化算法介绍群体智能(Swarm Intelligence)算法的定义:​ 群体智能优化算法主要是模拟了昆虫,兽群,鸟群和鱼群的群体行为,这些群体按照一定的合作方式寻找食物,群体中每个成员通过学习它自身经验和其他成员的经验来不断改变搜索的方向,任何一种由昆虫群体或者其他动物社会行为为机制而激发设计出的算法或者分 布式解释问题的策略均属于群体智能。群体智能优化算法原组邻近原则:群体能够进行简单的时间和空间计算品质原则:群体能够影响环境中的品质因子多样性反应原则:群体的行为范围冰不应

2021-10-17 14:14:40 9600

原创 关于动态规划

关于动态规划1、如何确定本问题可以使用动态规划​ 是否有后效性,对于某个问题,如果我们只关注某个状态,只关注状态的值,而不关注该状态是如何转移过来的,那么就是一个无后效性的问题,此时可以使用DP解决。​ 另外,可以根据数据范围来猜测是否使用DP解决,如果数据的范围在105−10610^{5} - 10^{6}105−106,可以考虑使用一维DP来解决,如果数据范围在102−10310^{2} - 10^{3}102−103,可以考虑使用二维DP来解决。2、我们如何确定本题的状态定义​ .

2021-10-17 11:04:18 275

空空如也

空空如也

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

TA关注的人

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