Java 并发编程入门 JUC写在前面推荐阅读http://ifeve.com/java-memory-model-1/ :深入理解 Java 内存模型-程晓明https://segmentfault.com/a/1190000017372067 :深入分析 AQS 实现原理《Java 并发编程的艺术》:方腾飞,魏鹏,程晓明ConcurrentHashMap JDK8:https://juejin.im/post/6844903602423595015ConcurrentHashMap JDK8 与
Docker——从坟里到实践 DockerDocker 使用 Google 公司推出的 Go 语言 进行开发实现,基于 Linux 内核的 cgroup,namespace,以及 AUFS 类的 Union FS 等技术,对进程进行封装隔离,属于 操作系统层面的虚拟化技术。由于隔离的进程独立于宿主和其它的隔离的进程,因此也称其为 容器 。最初实现是基于 LXC,从 0.7 版本以后开始去除 LXC,转而使用自行开发的 libcontainer,从 1.11 开始,则进一步演进为使用 runC 和 containerd。Docker
数据结构——图 数据结构—图图的定义与基本术语图:G=(V, E)V: 顶点(数据元素)的有穷非空集合E: 边的有穷集合有向图和无向图:前者边有方向,后者边无方向 完全图:任意两个点都有一条边相连无向完全图:一张图中每条边都是无方向的;在无向完全图中;在无向完全图中:n个顶点,有n(n-1)/2条边有向完全图:图中各边都有方向,且每两个顶点之间都有两条方向相反的边连接的图;在有向完全图中:n个顶点,有**n(n-1)**条边稀疏图:有很少的边或弧的图 (e &l
当我谈递归与回溯时我在谈些什么 递归算法能够解决的一个典型问题,是具有树形结构的问题,当我们发现一个问题与一个更小的问题之间存在递推的关系时,递归关系呈现出来的是一个树形结构树形问题:分析问题时,发现解决问题的思路本质是一棵树的形状回溯算法是在树形图上的深度优先遍历回溯的产生是由于深度优先遍历的回退,造成了状态重置或撤销选项解决回溯问题的第一步是画出树形图回溯的本质是DFS,回溯只是DFS产生的现象本质上是遍历...
springBoot整合shiro springBoot整合shiroshiro的认证授权,config等基本都是死代码。shiro常用方法//controller层//获取当前用户Subject subject = SecurityUtils.getSubject(); //封装用户的登陆数据,生成tokenUsernamePasswordToken Token = new UsernamePass...
SprinBoot多地区化 国际化登录主要的要点在于properties的配置和spring中message.basename的配置properties文件配置(注意_en_US代表语言文化代码,不能漏写错写,最后附上了语言文化代码表)不2.yaml配置文件配置3.在请求中带上参数信息4.配置地区解析器public class MyLocalResolver implements LocaleResolv...
使用AWT的Java简单多人聊天室 客户端import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;import java.io.*;import java.ne...
Java一键备份图片 import java.io.*;public class beifen { static String recouse = "C:\\Users\\72349\\Pictures\\vs_back"; public static void main(String[] args) { //源文件夹 File file = new File(...
双向循环链表 #include<stdio.h>#include<stdlib.h>#include<malloc.h>typedef struct Elment{ int id; char* name;}Data;typedef struct Node{ Data data; struct Node* prior; //指向前驱 stru...
树的双亲孩子表示法 #include<stdio.h>#include<stdlib.h>#include<malloc.h>#define MAX_SIZE 100typedef struct childNode{ int child_id; struct childNode* next;}cNode;typedef struct headNode{ i...
树的孩子表示法 #define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<stdlib.h>#include<malloc.h>#define MAX_SIZE 100//将子结点设计为链表typedef struct chileNode{ int id; struct chileNode* next...
树的双亲表示法 #define _CRT_SECURE_NO_WARNINGS#include<stdio.h>#include<stdlib.h>#define MAX_SIZE 100//结点的数据域typedef struct Element{ int id; char* name;}node_ele;//结点的结构typedef struct PNode...
查表法实现进制转换--Java public static void main(String[] args) { toBin(67); toHex(60587); toBa(3065); } //转2 public static void toBin(int num) { trans(num , 1, 1); } ...
二分查找--Java(注释详细) public static void main(String[] args) { int[] arr = {1,2,3,4,5,6,7,8,9,10}; System.out.println("查找总次数:"+ halfFind(arr, 12)); System.out.println("查找总次数:"+ halfFind(arr, ...
KMP c语言 #include<stdio.h>#include<stdlib.h>#include<string.h>int* KMP(char* P);//next数组的推导int* KMP(char* P){ int len = strlen(P); int* next = (int*)malloc(sizeof(int) * len); ...
双向链表 #include<stdio.h>#include<stdlib.h>typedef struct Elment{ int id; char* name;}Data;typedef struct Node{ Data data; struct Node* prior; //指向前驱 struct Node* next; //指向后...
静态链表 #include<stdio.h>#include<stdlib.h>#define MAX_SIZE 40typedef struct Data{ int id; char* name;}Data;typedef struct staticList{ Data data; int next; //游标,如果等于0,表示链表结束}s...
循环链表 #include<stdio.h>#include<stdlib.h>#include<string.h>typedef struct data{ int id; char* name;}data;typedef struct node{ data da; struct node* pNext;}node;node* g_phea...
C语言实现顺序表(注释非常详细了) 最近在学数据结构,记录下我写的顺序表#include<stdio.h>#include<stdlib.h>#define MAX_SIZE 255 //顺序表最大容量/* InitList: seqlist : 要初始化的顺序表 Array : 初始化时添加的元素组成的数组 length : 初始化的顺序表的长度*/void InitList(...