- 博客(16)
- 资源 (1)
- 收藏
- 关注
转载 Spring-MVC-Demo
Spring-MVC-Demo 转自https://mowangblog.github.io/SpringMVC-Demo/#/?id=spring-mvc-demo 目录 一、SpringMVC简介 1、什么是MVC 2、什么是SpringMVC 3、SpringMVC的特点 二、HelloWorld 1、开发环境 2、创建maven工程 a>添加web模块 b>打包方式:war c>引入依赖 3、配置web.xml a>默认配置方式 b>扩展配置方式
2022-02-06 11:15:07
3969
原创 Leetcode 11 盛水最多的容器
https://leetcode-cn.com/problems/container-with-most-water/ 采用双指针法,移动高度较小的一方的指针。 面积 = 指针距离 * 较小的高度 显然,移动左右指针的任何一方,指针距离都会变小,此时 如果移动较大的高度的指针,则其面积必然会减小,但是如果移动较小高度的指针,则较小指针的高度可能是增加的,面积可能会增加,因而需要移动较小高度的指针 class Solution { public int maxArea(int[] height) {
2021-08-13 15:32:37
238
原创 Leetcode 24 两两交换链表中的节点
https://leetcode-cn.com/problems/swap-nodes-in-pairs/ /** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode() {} * ListNode(int val) { this.val = val; } * ListNode(int val, List
2021-08-13 15:27:25
181
原创 Leetcode 36 有效数独
https://leetcode-cn.com/problems/valid-sudoku/ class Solution { public boolean isValidSudoku(char[][] board) { int n = board.length; for(int i = 0; i < n; ++i){ Set<Character> line = new HashSet<>();
2021-08-13 11:03:47
223
原创 LeetCode 48 旋转图像
https://leetcode-cn.com/problems/rotate-image/ 先上下翻转,再主对角线翻转 class Solution { public void rotate(int[][] matrix) { int n = matrix.length; for(int i = 0; i < n / 2; ++i){ for(int j = 0; j < n; ++j){ swap
2021-08-13 10:14:17
122
原创 Java HotSpot虚拟机中对象的创建过程以及对象的内存布局
5.HotSpot虚拟机对象 (1)虚拟机中对象的创建 ①类加载检查:先检查new指令的参数能否在常量池中定位到一个类的符号引用,并检查这个符号引用代表的类是否已经被加载、解析和初始化,如果没有则执行响应的类加载过程。 ②为新生对象分配内存:有两种方式“指针碰撞”(适合堆较为规整)和“空闲列表”(堆不规整)。Java堆是否规整取决于垃圾回收器的空间压缩整理能力。 *如何保证内存分配的线程安全呢? 对分配内存的动作进行同步处理; 每个线程在Java堆中预先分配一块内存,即本地线程分配缓冲(TLAB),只有当线
2021-07-13 18:55:25
174
原创 Java 从源码简单的看hashMap实现原理
部分常量解释 /*hashmap默认初始容量为16 The default initial capacity - MUST be a power of two.*/ static final int DEFAULT_INITIAL_CAPACITY = 1 << 4; /*已用达到0.75后会进行扩容 The load factor used when none specified in constructor.*/ static final float DEFAULT_LOAD_FACTOR
2021-07-09 20:03:37
177
原创 Java 多线程计算1到1000的和
public class Test { public static void main(String[] args) throws InterruptedException { MTC mtc = new MTC(); for(int i = 0; i < 10; i++){ new Thread(mtc).start(); Thread.sleep(500); } while(
2021-07-08 19:18:31
2122
原创 LeetCode 204.计数质数
统计所有小于非负整数 n 的质数的数量。 class Solution { public: int countPrimes(int n) { if(n < 2) return 0; vector<int> hash(n, 1); hash[0] = 0; hash[1] = 0; int pos = 2; while(pos < hash.size()){ while(p
2021-04-14 20:43:03
129
原创 C++ 双向链表实现
#include <utility> #include <iterator> using namespace std; template<class T> class DLinkedListIterator : public iterator<input_iterator_tag, T>{ public: DLinkedListIterator(T* p){_ptr = p;} T& operator * (){return *_ptr;}
2021-04-08 21:29:29
120
原创 C++中 istringstream 实现字符串按空格分割
deque<string> Strs; string s; istringstream IN(sentence); while(IN >> s){ Strs.push_back(IN); }
2021-04-06 19:18:27
687
原创 操作系统-多处理器系统
操作系统-多处理器系统 多处理器系统又称并行系统或者多核系统 优点:提高吞吐量、规模经济、提高可靠性 两种类型:非对称处理、对称多处理、集群系统 1.非对称处理系统 由一个处理器来操纵系统(主处理器),其他处理器向主处理器要任务或者做预先分配好的任务 2.对称多处理器系统(SMP) 每个处理器都参与操作系统的所有任务,处理器之间是对等关系。每个处理器都有自己的寄存器集和缓存,但是共享内存。 3.集群系统 集群系统将多个CPU组合在一起,操纵多个独立系统。集群系统共享连接,并采用内部连接(如局域网)
2021-03-31 17:33:17
1759
原创 操作系统-进程与线程的区别
操作系统-进程与线程的区别 1.什么是进程 简单的讲,进程是执行的程序,资源分配的最小单位。 进程包括:文本段(程序代码)、程序计数器的值、CPU寄存器的内容、堆、栈、数据段 进程的状态:新的、就绪、运行、等待、终止 进程控制块(PCB):进程状态、程序计数器、CPU寄存器、CPU调度信息、内存管理信息、记账信息、I/O信息 2.什么是线程 线程是CPU调度的基本单位,它被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,
2021-03-31 16:28:18
803
原创 C++ 智能指针
C++ 智能指针 本质:类对象 思想:利用类对象的析构函数来实现当智能指针过期时自动删除其指向的内存 种类:auto_ptr(C++ 98), shared_ptr, unique-ptr, weak_ptr 头文件:memory 命名空间: std 1.使用 以auto_ptr为例: template<class X> class auto_ptr { public: explicit auto_ptr(X* p = 0); /*......*/ }; int a = 1;
2021-03-30 22:54:31
134
原创 回溯问题模版
回溯问题模版 Result = [] def backtrack(path, Choice_list): if condition: Result.add(path) return for Choice in Choice_list: choose a choice backtrack(path, Choice_list) backout choice
2021-03-18 20:22:00
212
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅