自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

汤小萌的博客

分享交流学习

  • 博客(288)
  • 资源 (1)
  • 收藏
  • 关注

原创 给定一个整数数组和一个目标值,找出数组中和为目标值的两个数(同样的元素只能用一次)

解决方案*方法一:暴力法:public static int[] twoSum01(int[] nums, int target) { for(int i = 0; i < nums.length; i++) { for(int j = i + 1; j < nums.length; j ++) { if(nums[j] =...

2018-06-10 18:34:22 14594 5

原创 【无标题】

ensp

2023-01-30 17:22:22 169

原创 UML类图

系列文章目录文章目录系列文章目录前言一、UML介绍二、UML类图2.1 类图-依赖关系(Dependence)2.2 类图--泛化关系(generalization)2.3 类图 -- 实现关系(Implementation)2.4 类图 -- 关联关系(Association)2.5 类图 -- 聚合关系(Aggregation)2.6 类图 -- 组合关系(composition)总结前言UML–Unified modeling language UML(统一建模语言),是一种用于软件系统

2020-12-25 14:39:09 533

原创 设计模式_七大设计原则

七大设计原则https://blog.csdn.net/qq_33248019/article/details/89253768设计模式原则,其实就是我们在编程时,应当遵循的原则,也是各种设计模式的基础(即设计模式这样设计的依据)设计模式常用的七大设计原则有:1)单一职责原则2)接口隔离原则3)依赖倒转(倒置原则)4)里氏替换原则5)开闭原则6)迪米特法则7)合成复用原则文章目录七大设计原则一、单一职责原则1.基本介绍2.代码分析二、接口隔离原则1.基本介绍总结一、单一职责

2020-12-23 18:32:13 398

原创 Stream AP练习

问题描述:1. 给定一个数字列表,如何返回一个由每个数的平方构成的列表 ?例如: 给定 [1,2,3,4,5] 返回 [1,4,9,16,35]解析: @Test public void test1() { Integer[] nums = new Integer[] {1,2,3,4,5}; Arrays.stream(nums) .map((x) -> x * x) .forEach(

2020-12-19 17:13:40 375 1

原创 Java8新特性_Stream API

系列文章目录文章目录系列文章目录一、了解Stream二、创建Stream三、中间操作3.1 筛选与切片3.1.1 filter(Predicate p) -- 接收Lambda,从流中排除某些元素3.1.2 limit - 截断流,使其元素不超过给定数量3.1.3 skip(n) -- 跳过3.1.4 distinct() 方法去重,需要重新hashCode() 跟 equals() 方法3.2 映射3.2.1 map()3.2.2 flatMap()3.2 排序3.3.1 sorted()3.3.2

2020-12-19 10:29:41 164

原创 Java8新特性_方法引用与构造器引用

目录前言一、方法引用1.1 对象::实例方法名1.2 类::静态方法名1.3 类::实例方法名二、构造器引用2.1 无参构造器2.1 一个参数的构造器2.3 连个参数的构造器三、数组引用总结前言一、方法引用方法引用:若Lambda 体中的内容有方法已经实现了,那么我们可以使用"方法引用"可以理解为 方法引用 是Lambda 表达式的另外一种表现形式主要有三种语法格式:对象::实例方法名类::静态方法名类::实例方法名 注意事项:Lambda体中调用方法的参数列表与返回值.

2020-12-16 13:34:19 392

原创 Lambda表达式细致文档

系列文章目录提示:Lambda表达式的使用文章目录系列文章目录前言一、为什么使用Lambda表达式二、Lambda表达式入门1.Lambda表达式的基础语法:2.Lambda表达式语法格式2.1 语法格式一 : 接口无参数,无返回值2.2 语法格式二 : 一个无参数,无返回值2.3 语法格式三 : 若只有一个参数,参数的小括号可以省略不写2.4 语法格式四 : 有两个以上的参数,有返回值,并且Lambda体重有多条语句2.5 语法格式五 : 若Lambda体中只有一条语句, ret

2020-12-16 09:59:01 342

原创 线段树

线段树要解决的问题,如何快速地区间修改,更新,查询一些东西

2020-12-02 23:07:11 152

原创 涉及位运算符的操作的算法

涉及位运算符的操作的算法题目一:如何不用额外变量就交换两个数的值题目二: 一个数组中只有一种数出现了奇数次,其他数都出现了偶数次,怎么找到并打印这种树题目三:怎么把一个int类型的数,提取出最右侧的1来题目四:一个数组中有两种数出现了奇数次,其他数都出现了偶数次,怎么找到并打印这两种数异或运算 : 相同为0,不同为1 – 记成无进位相加同或运算 : 相同为1,不同为06 ^ 7 = 1110 ^ 111 (二进制)----------001 (无进位相加)异或预算的性质1) 0 ^

2020-11-30 17:58:10 239

原创 条款02:尽量以const,enum,inline 替换 #define

条款02:尽量以const,enum,inline 替换 #define1.定义一个常量知识点:1 宏函数和函数的区别2 详解宏定义(#define) – 值得去看我们常用define做什么:1.定义一个常量,2.定义一个宏1.定义一个常量当我们定义一个常量时,我们可以用以下方式:#define ASPECT_PATIO 1.653我们知道编译器并没有看到ASPECT_PATI...

2019-11-12 15:49:56 259

原创 条款01:视C++为一个语言联邦)

条款01:视C++为一个语言联邦C++ 的四个次语言如何理解C++语言:最简单的方法就是将C++视为由一个相关语言组成的联邦而非单一的语言.四个次语言组成了C++这门联邦语言C++ 的四个次语言C : 说到底C++仍是以C为基础区块,语句,预处理器,内置数据类型Object-Oriented C++ :面向对象 , class,封装,继承,多态度,虚函数… 这一部分则是面向对象设计...

2019-11-12 09:08:26 368

原创 excel高级功能-分级显示

1.1 创建组合1.2 分类汇总

2019-10-10 11:45:52 1099

原创 Excel高级功能 数据工具

1.1 数据分列1.2 快速填充1.3删除重复项1.4 数据校验 -- 数据有效性1.5 合并计算

2019-10-09 22:50:11 814

原创 stat函数实现ls -l 命令

#include <stdio.h>#include <unistd.h>#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>#include <stdlib.h>#include <string.h>#include <ti...

2019-10-07 21:48:36 512

原创 阻塞与非阻塞

阻塞的概念read函数在读设备或者读管道,或者读网络的时候,设置非阻塞#include <stdio.h> 2 #include <unistd.h> 3 #include <stdlib.h> 4 #include <fcntl.h> 5 #include <string.h> 6 #inc...

2019-10-06 15:11:18 185

原创 系统函数

实现一个cat功能#include <stdio.h> 2 #include <unistd.h> 3 #include <sys/stat.h> 4 #include <sys/types.h> 5 #include <fcntl.h> 6 7 8 int main(int argc, char *a...

2019-10-06 14:45:20 244

原创 open

cpu为什么要使用虚拟地址空间与物理地址空间映射?解决了什么问题1.方便编译器和操作系统安排程序的地址分布程序可以使用一系列相邻的虚拟地址来访问物理内存中不相邻的大内存缓冲区2.方便进程之间隔离不同进程使用的虚拟地址彼此隔离.一个进程中的代码无法更改正在由另一进程使用的物理内存3.方便OS使用你那渴念的内存程序可以使用一系列虚拟地址来访问大于可用物理内存的内存缓冲区.当物理内存的供应...

2019-10-06 13:57:35 265

原创 gdb调试

使用gdb:编译的时候加 -g使用案例:head.h #pragma once 2 3 int sum(int, int); 4 int mul(int, int); func.c #include <stdio.h> 2 #include "head.h" 3 4 int sum(int a, int b) 5 { 6 pr...

2019-10-05 13:53:25 230 1

原创 makefile的多种写法

如何一步一步写makefile文件,具体的进化过程

2019-10-05 00:17:11 688 1

原创 vim 配置

点击跳转

2019-10-03 21:35:50 99

原创 ignore文件的编写

点击跳转连接

2019-10-02 16:40:53 399

原创 贪吃蛇案例_c++

wall.h#pragma once#ifndef _WALL_HEAD#define _WALL_HEAD#include <iostream>using namespace std;class Wall{public: enum { ROW = 26 , COL = 26 }; // 初始化墙壁 void initWall(); // ...

2019-10-01 22:32:02 272

原创 栈的顺序存储

SeqStack.h#pragma once#include <stdlib.h>#include <stdio.h>#include <string.h>#ifdef __cplusplusextern "C" {#endif#define MAX 1024 // 顺序栈数据结构 struct SStack { void *dat...

2019-10-01 09:50:12 300

原创 单向链表_版本二

#define _CRT_SECURE_NO_WARNINGS#include "stdio.h"#include "stdlib.h"// 链表节点struct LinkNode{ struct LinkNode *next;};// 链表struct LList{ struct LinkNode header; //头节点 int size;};typedef ...

2019-10-01 09:48:09 107

原创 单向链表_版本一

LinkList.h#pragma once#ifdef __cplusplusextern "C"{#endif // void * 本身是没有含义的 typedef void * LinkList; typedef void(*FOREACH)(void *); // 遍历的回调函数 typedef int(*COMPARE)(void *, void *); // 初...

2019-09-29 20:35:07 105

原创 动态数组

动态数组#define _CRT_SECURE_NO_WARNINGS#include "stdio.h"#include "stdlib.h"/* 数组中存的都是 void * 类型的元素*/// 1. 先把所需要得到数据信息结构定义下来struct DynamicArray{ // 数组存储元素的空间的首地址 void **addr; // 存储数据的内存中最大能够容...

2019-09-29 11:16:25 158

原创 stl演讲比赛案例

需求分析产生选手 ( ABCDEFGHIJKLMNOPQRSTUVWXYZ ) 姓名、得分;选手编号第1轮 选手抽签 选手比赛 查看比赛结果第2轮 选手抽签 选手比赛 查看比赛结果第3轮 选手抽签 选手比赛 查看比赛结果实现思路需要把选手信息、选手得分信息、选手比赛抽签信息、选手的晋级信息保存在容器中,需要涉及到各个容器的选型。(相当于信息的数据库E-R图设计)选手可以设计一个类Sp...

2019-09-28 12:29:57 217 1

原创 c++学习资源

github 上整理的学习内容点击跳转

2019-09-28 07:40:10 179

原创 STL算法

遍历算法#define _CRT_SECURE_NO_WARNINGS#include <iostream>#include <vector>#include <list>#include <set>#include <algorithm>#include <functional>#include <st...

2019-09-28 07:22:00 93

原创 函数对象与谓词

函数对象重载函数调用操作符的类,其对象常称为函数对象(function object),即他们的行为类似函数的对象.一个类对象,表现出一个函数的特征,就是通过"对象名+(参数列表)"的方式使用一个类对象,如果没有上下文,完全可以把它看作一个函数对待.这是通过重载类的operator()来实现的.“在标准类库中,函数对象被广泛地使用以获得弹性”,在标准库中的很多算法都可以使用函数对象或者函数来...

2019-09-27 07:18:03 498

原创 容器共性机制研究

理论提高所有的容器提供的都是值(value)语意,而非引用(reference)语意.容器执行插入元素的操作时,内部实施拷贝动作.所以STL容器内存储的元素必须能够被拷贝(必须提供拷贝函数)1 容器中缓存了用户的节点2 节点的类, 要保证节点能够插入到容器中 一般节点类 , 需要提供无参构造函数,拷贝构造函数,重载=操作符1 除了queue和stack外,每个容器都提供可返回...

2019-09-26 11:54:58 181

原创 Map的操作

map 存放元素和遍历#define _CRT_SECURE_NO_WARNINGS#include <iostream>#include <map>#include <string>using namespace std;void map_operate(){ map<int, string> map1; // 方法1 ...

2019-09-26 11:01:34 190

原创 类模板在项目开发中的应用

训练题:请设计一个数组模板类(MyVector),完成对int,char,Teacher类型元素的管理.需求: 类模板, 构造函数, 拷贝构造函数 重载 << >> =...

2019-09-17 15:36:15 223

原创 普通函数和模板函数

1. 函数模板和普通函数一样重载 2. c++编译器优先考虑普通函数 3. 如果函数模板可以产生一个更好的匹配,那么现在模板 4. 可以通过空模板实参列表的语法限定编译器只通过模板匹配

2019-09-17 09:36:51 199

原创 类模板语法知识体系梳理

类模板语法知识体系梳理

2019-09-17 08:58:45 128

原创 C++中string类的使用案例

C++中string类的使用案例

2019-09-16 10:54:06 200

原创 函数指针做函数参数思想剖析

函数指针做函数参数示例代码#include <iostream>using namespace std;int myadd(int a, int b){ printf("func add() ... \n"); return a + b;}// 函数指针做函数参数// 写法1// 定义了一个类型typedef int(*MyTypeFuncAdd)(int...

2019-09-12 16:33:37 231

原创 数组指针与函数指针基本语法对比记忆

数组指针#include <iostream>using namespace std;// 1.定义一个数组类型// 2.定义一个指针数组类型 -- 指针数组// 3.定义一个指向数组类型的指针 -- 数组指针int main(){ int a[10]; // a代表的是数组首元素的地址 &a 代表的是整个数组的地址 a + 1 与...

2019-09-12 11:46:31 171

原创 抽象类在多继承中的应用

#define _CRT_SECURE_NO_WARNINGS#include <iostream>using namespace std;class Interface1{public: virtual int add(int a, int b) = 0; virtual void print() = 0;};class Interface2{public:...

2019-09-11 20:06:36 194

IDEA常用设置(IDEA的一些常用设置)

IDEA常用设置(IDEA的一些常用设置)

2023-05-15

配置linux的静态ip

linux配置静态ip,可以实现本机软件连接到虚拟机,使用的模式是NAT模式

2018-08-06

空空如也

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

TA关注的人

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