自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 手写 Spring 框架之 XML 解析+反射实现 IoC

核心技术点:XML解析 + 反射具体思路: 配置XML文件,程序读配置文件,把信息读出来,创建对象,装到Map里,再从Map里把对象取出来。1、根据需求编写 XML 文件,配置需要创建的 bean。2、编写程序读取 XML 文件(dom4j 解析 XML),获取 bean 相关信息,id、类、属性。3、根据第 2 步获取到的信息,结合反射机制动态创建对象,同时完成属性的赋值。4、将创建好的 bean 存入 Map 集合,设置 key - value 映射,key 就是 bean 中 id .

2021-07-19 13:20:43 586 1

原创 [二分查找/Java]基本的二分查找、寻找左/右边界的二分查找

1. 二分查找框架int binarySearch(int[] nums, int target){ int left = 0; int right = ... while(...){ int mid = left + (right - left) / 2; if(nums[mid] == target){ ... }else if(nums[mid] < target){ lef

2021-05-18 16:41:11 359

原创 [Java]Error parsing SQL Mapper Configuration. Cause: java.io.IOException: Could not find resource...

学习MyBatis框架过程中多数人可能都会遇到以下这个问题:提示:Caused by: org.apache.ibatis.builder.BuilderException: Error parsing SQL Mapper Configuration. Cause: java.io.IOException: Could not find resource xxx/AccountMapper.xml即找不到 AccountMapper.xml 这个 Mapper 文件,这是因为项目在编译 java 目

2021-01-20 16:47:42 1475 3

原创 [Java/Date]时间格式化:特定格式的字符串与Date类型时间互转,美国时间格式 ---> 中国时间格式

parse():把特定格式的字符串转换成Date类型。format():把Date类型转换成特定格式的字符串。1. 特定格式字符串 -> Date类型parse():把特定格式的字符串转换成Date类型。// 特定格式字符串 -> Date类型String str_date = "2021年01月15日 20:50:10";System.out.println("字符串格式:" + str_date);SimpleDateFormat sdf = new SimpleDateFor

2021-01-15 21:04:24 542

原创 [杂]如何找到CSDN中关注的用户和粉丝?

刚刚在CSDN个人账号里找了半天都没找到自己关注的人对CSDN账号管理感到很迷,很不人性化的设置,找一个自己关注的以下是查看关注的用户和粉丝链接:关注的用户和粉丝链接:http://my.csdn.net/my/follow有其他的方法欢迎评论交流!...

2021-01-09 14:53:38 692 4

原创 [Java]String和int类型相互转换

1. int转String类型① Integer类中parseInt()方法Integer.parseInt(str)String str = "123456";int num = Integer.parseInt(str);② Integer类中valueOf()方法Integer.valueOf(str).intValue()String str = "123456";int num = Integer.valueOf(str).intValue();2. String转int类型

2020-12-17 12:44:30 273

原创 [FPGA/Vivado]Vivado软件的所有项目关联Notepad++

要想Vivado软件的所有项目都关联上Notepad++,在打开Vivado软件后不要打开任何项目,直接进行设置关联。如下图所示,打开vivado软件,Tools->Settings->Text Editor->Current Editor中下拉选择Custom Editor。如下图,按照格式输入命令:“notepad++安装目录/notepad++.exe [file name] -n[line number]”,前面是Notepad++的安装路径,后面是 [file name]

2020-12-10 18:21:16 3149

原创 [FPGA/Vivado/ILA]Vivado的ILA核在Waveform界面无任何变化,抓取不到信号和数据

使用Vivado软件操作ILA核,在Waveform界面如遇到抓取不到信号的问题,如下图所示:可能在以下方面出现问题:最基础也是最重要的:通过IP Catalog产生ILA核后,是否在代码里例化ILA?ILA例化的信号是否正确?可以打开synthesized design和implemented design,查看schematic中的看看连接情况。Add Prodes:是否加入需要观察的信号?添加需要观察的信号,方便观察各个时刻的波形和数据。Trigger Setup:是否设置触发信

2020-12-04 16:16:42 17122 2

原创 [LeetCode]36. Valid Sudoku

36. Valid Sudoku一、题目Problem Description:Determine if a 9∗99 * 99∗9 Sudoku board is valid. Only the filled cells need to be validated according to the following.Rules:Each row must contain the digits 1−91-91−9 without repetition.Each column must cont

2020-12-03 14:23:26 97

原创 [LeetCode]48. Rotate Image

48. Rotate Image一、题目Problem Description:You are given an nxnn x nnxn 2D matrix representing an image, rotate the image by 90 degrees (clockwise).You have to rotate the image in-place, which means you have to modify the input 2D matrix directly. DO NOT

2020-12-02 21:02:12 152

原创 [LeetCode]189. Rotate Array

189. Rotate Array一、题目Problem Description:Given an array, rotate the array to the right by k steps, where k is non-negative.Follow up:Try to come up as many solutions as you can, there are at least 3 different ways to solve this problem.Could you do i

2020-12-01 20:31:11 87

原创 [LeetCode]217. Contains Duplicate

217. Contains Duplicate一、题目Problem Description:Given an array of integers, find if the array contains any duplicates.Your function should return true if any value appears at least twice in the array, and it should return false if every element is disti

2020-11-29 21:06:11 110

原创 [LeetCode]136. Single Number

136. Single Number一、题目Problem Description:Given a non-empty array of integers nums, every element appears twice except for one. Find that single one.Follow up:Could you implement a solution with a linear runtime complexity and without using extra memo

2020-11-29 18:12:32 122

原创 [LeetCode]66. Plus One

66. Plus One一、题目Problem Description:Given a non-empty array of decimal digits representing a non-negative integer, increment one to the integer.The digits are stored such that the most significant digit is at the head of the list, and each element in t

2020-11-28 22:12:38 141

原创 [LeetCode]1. Two Sum

1. Two Sum一、题目Problem Description:Given an array of integers nums and an integer target, return indices of the two numbers such that they add up to target.You may assume that each input would have exactly one solution, and you may not use the same elem

2020-11-28 19:44:14 270 2

原创 [LeetCode]122. Best Time to Buy and Sell Stock II

122. Best Time to Buy and Sell Stock II一、题目Problem Description:Say you have an array prices for which the ith element is the price of a given stock on day i.Design an algorithm to find the maximum profit. You may complete as many transactions as you li

2020-11-27 14:48:18 122

原创 [LeetCode]26. Remove Duplicates from Sorted Array、80. ... II、27. Remove Element、283. Move Zeroes

26题删除数组中的重复元素80题删除数组中的重复元素,使得数组中值相同的元素最多出现两次27题删除数组中的指定元素283题删除数组中的0这几道题相对简单,实质是一样的,采用 Two Pointers 可实现多题一解,归纳为一个系列的题。题目这里就不在描述,可点击下面的题目链接查看原题26. Remove Duplicates from Sorted ArrayTwo Pointers:一个指针跟踪原始数组中的当前元素,另一个指针跟踪唯一元素Time complexity : O(n)O(n)

2020-11-27 13:13:28 92

原创 [LeetCode]198. House Robber

198. House Robber一、题目Problem Description:You are a professional robber planning to rob houses along a street. Each house has a certain amount of money stashed, the only constraint stopping you from robbing each of them is that adjacent houses have secur

2020-11-26 14:32:08 139

原创 [LeetCode]121. Best Time to Buy and Sell Stock

121. Best Time to Buy and Sell Stock一、题目Problem Description:Say you have an array for which the ithi^{th}ith element is the price of a given stock on day iii.If you were only permitted to complete at most one transaction (i.e., buy one and sell one sha

2020-11-25 21:54:23 107

原创 [LeetCode]70. Climbing Stairs

70. Climbing Stairs一、题目Problem Description:You are climbing a staircase. It takes n steps to reach the top.Each time you can either climb 1 or 2 steps. In how many distinct ways can you climb to the top?Example 1:Input: n = 2Output: 2Explanation: T

2020-11-24 22:37:02 177

原创 [Software]基于Windriver的PCIe驱动开发

注:本博客的前提是此PCIe设备已成功安装INF驱动。Windriver快速生成驱动程序、驱动的安装和测试等可详见上一篇博客 基于Windriver快速驱动开发选择PCIe板卡并双击。如下图所示,点击“Generate Code”按钮,弹出“Select Code Generation Options”窗口。“Select Code Generation Options”设置。Add device-specfic customization根据不同板卡选择不同,此处选择了Xilinx BM

2020-11-14 22:55:32 1154

原创 [SoftWare]基于Windriver快速驱动开发

提示关闭WinDriver,防止运行VS编译后的应用程序时出现资源冲突的问题

2020-11-14 19:43:54 2583

原创 [LeetCode/PriorityQueue/Java]LeetCode之Heap(PriorityQueue)题解(Java)

PriorityQueue(优先队列)基础知识和常用方法: [PriorityQueue/Java]PriorityQueue(优先队列)215. Kth Largest Element in an Array一、题目Problem Description:Find the kth largest element in an unsorted array. Note that it is the kth largest element in the sorted order, not the kth

2020-10-24 23:33:59 266

原创 [PriorityQueue/Java]PriorityQueue(优先队列)

1. 堆(Heap)、完全二叉树、堆排序1.1 堆(Heap)的定义从堆的定义可以看出,堆的实质是满足如下性质的完全二叉树:二叉树中任一非叶子结点均小于(大于)它的孩子结点1.2 完全二叉树树中的结点按从上大小,一层一层,每层从左到右来编号。1.3 堆排序若在输出堆顶的最小值(最大值)后,使得剩余n-1个元素的序列重新又建成一个堆,则得到n个元素的次小值(次大值)…如此反复,便能得到一个有序序列,这个过程称之为堆排序。2. PriorityQueue(优先队列)优先队列是堆排序的应用

2020-10-24 10:27:25 177

原创 [Java]反射——框架设计的灵魂

前沿:反射——框架设计的灵魂使用框架,不会反射也没关系,因为框架已经写好了,并不需要用反射;开发框架,写框架,需要用到反射;理解反射,掌握反射,在学习框架,使用框架时,也能使用的更好。1. 反射概念反射:将类的各个组成部分封装为其他对象。Java代码在计算机中经历的三个阶段:Source 源代码阶段源代码阶段代码还在硬盘Class 类对象阶段Runtime 运行时阶段将类的成员变量封装为Filed对象;将类的构造方法封装为Constructor对象;将类的成员方

2020-09-04 15:35:18 216

原创 [Java]动态代理

1. 代理模式设计模式:一些通用的解决固定问题的方式代理模式概念真实对象:被代理的对象代理对象代理模式:代理对象代理真实对象,达到增强真实对象功能的目的代理模式实现方式静态代理:有一个类文件描述代理模式动态代理:在内存中形成代理类动态代理需要重点掌握,框架的底层的实现原理很多都会涉及到动态代理代理模式应用于增强对象2. 动态代理实现步骤代理对象和真实对象实现相同的接口代理对象 = Proxy.newProxyInstance(类加载器, 代理对象要实现的接口字节码

2020-08-20 18:27:35 142

原创 [排序/C++]7. 排序算法详细代码

7. 各排序算法详细代码排序文章汇总:排序基础知识和总结插入排序:直接插入排序、二分插入排序、希尔排序交换排序:冒泡排序、快速排序快速排序:简单选择排序、堆排序归并排序:2-路归并排序基数排序代码备注:各排序算法代码都是基于带哨兵的序列,即L.nums[0]为哨兵位,记录/数据元素都从L.nums[1]开始存储!!!#include <iostream>using namespace std;#define MAXSIZE 20 //最大数据元素数

2020-08-18 09:48:31 218

原创 [排序/C++]6. 基数排序

6. 基数排序也叫桶排序或箱排序6.1.1 算法分析和思路基本思想:分配+收集分配:设置若干个箱子,将关键字为k的记录放入第k个箱子;收集:按序号将非空的连接。数字是有范围的,均由0-9这十个数字组成,则只需设置十个箱子,相继按个、十、百…进行排序。注:算法思路及详细过程可参考后续的示例和代码及代码流程图!6.1.2 算法示例6.1.3 算法代码//基数排序算法void RadixSort(SqList &L){ int len = L.lengt

2020-08-17 22:45:03 150

原创 [排序/C++]5. 归并排序

5. 归并排序5.1.1 算法分析和思路基本思想采用分治法(Divide and Conquer)的一个典型应用将两个或两个以上的有序子序列归并为一个有序序列。把长度为n的输入序列分成两个长度为n/2的子序列;对这两个子序列分别采用归并排序;将两个排序好的子序列合并成一个最终的排序序列。2-路归并排序在内部排序中,通常采用的是2-路归并排序将两个位置相邻的有序子序列L[l…m]和L[m+1…n]归并为一个有序序列L[l…n],即将两个有序子序列归并成一个有序序列5.1.

2020-08-17 22:38:47 153

原创 [排序/C++]4. 选择排序(简单选择排序、堆排序)

4.1 简单选择排序4.1.1 算法分析和思路基本思想:在待排序的数据中选出最大(小)的元素放在其最终的位置。基本操作:首先通过n-1次关键字比较,从n个记录中找出关键字最小的记录,将它与第一个记录交换;再通过n-2次关键字比较,从n-1个记录中找出关键字次小的记录,将它与第二个记录交换;重复上述操作,共进行n-1趟排序后,排序结束。4.1.2 算法代码//简单选择排序算法void SelectSort(SqList &L){ for(int i = 1;

2020-08-17 22:30:09 276

原创 [排序/C++]3.交换排序(冒泡排序、快速排序)

3. 交换排序基本思想:两两比较,如果发生逆序则交换,直到所有记录都排好序为止。常见的交换排序方法:冒泡排序 O(n^2)快速排序 O(nlogn)3.1 冒泡排序——基于简单的交换思想3.1.1 算法分析和思路每趟不断将记录两两比较,并按**“前小后大”**规则排序。Q:为什么称之为冒泡?A:把数据元素竖着放,观察排序的整个过程就会发现,“轻”的元素往上浮,“重”的元素往下沉。就像气泡,轻的向上冒,重的向下沉。每一趟增加一个有序元素,最大的元素到了最后面,

2020-08-17 14:49:11 319

原创 [排序/C++]2. 插入排序(直接插入排序、二分插入排序、希尔排序)

2. 插入排序基本思想:每步将一个待排序的对象,按其关键码大小,插入到前面已经排好序的一组对象的合适位置上,直到对象全部插入为止。即边插入边排序,保证子序列中随时都是排好序的基本操作:有序插入在有序序列中插入一个元素,保持序列有序,有序长度不断增加。在插入a[i]前,数组a的前半段(a[0]a[i-1])是有序**,**后半段(a[i]a[n-1])是停留于输入次序的无序段。插入a[i]使a[0]~a[i-1]有序,也就是要为a[i]找到有序位置j(0<=j<=i),

2020-08-17 13:38:51 386

原创 [排序/C++]1. 排序基础知识和总结

1. 排序基础知识排序:将无序序列排成一个有序序列(由小到大 或 由大到小)按 主要操作,排序方法可分为:比较排序:用比较的方法插入排序、交换排序、选择排序、归并排序基数排序:不比较元素的大小,仅仅根据元素本身的取值确定其有序位置。主要学习:插入排序:直接插入排序、二分插入排序、希尔排序交换排序:冒泡排序、快速排序选择排序:简单选择排序、堆排序归并排序:2-路归并排序基数排序存储结构——记录序列以顺序表存储:#define MAXSIZE 20 //设记

2020-08-16 00:10:24 183 1

原创 [Software]Vivado 2018.2 安装及激活教程

安装1、 解压文件

2020-07-09 21:02:09 24494

原创 [C++]C++参数传递

1. 传值方式2. 传地址方式2.1 指针变量做参数2.2 数组名作参数2.3 引用类型作参数三点说明

2020-07-09 21:01:02 163

原创 [C/C++]C/C++中 *和&、指针和地址 的基本概念

1. 代码示例先来看一段简单的代码:int a = 10;int * p;p = &a;cout << a << endl;cout << &a << endl;cout << p << endl;cout << *p << endl;2. 逐行解析int a = 10; 定义一个int型变量a。int * p; 定义一个int型指针p。p = &a; 指针p指向

2020-07-08 14:21:28 333

原创 [C++]C++动态存储分配

分配空间new 类型名X(初值列表)功能:申请用于存放X类型对象的内存空间,并依初值列表赋以初值。结果值:成功:X类型的指针,指向新分配的内存失败:0(NULL)int *p1 = new int;new int:表示从内存中动态分配一块int类型的空间。new出来的这块空间也是得到这块空间的地址,所以它必须赋值给一个指针变量。int *p2 = new int(10);直接给这块空间赋上初值,加个括号,括号里写10。表示new了一块int类型的空间,这个空间存储了

2020-07-07 13:52:31 140

原创 [LeetCode/笔试]605. Can Place Flowers + 2020vivo提前批笔试第一题

[LeetCode]605. Can Place Flowers一、vivo真题二、Leetcode题目三、解题思路3.1 直接解法3.2 优化解法上周末,实验室师兄参加Vivo的提前批笔试。一共三道题,都是LeetCode的原题,只是vivo在题干中添加了自己公司大段文案,加上了一个外包装,看上去题目非常的长,实际上没有增加题目难度,和原题一模一样。根据vivo提前批笔试题目顺序,依次带来这三道LeetCode题目。一、vivo真题以上图片就是vivo第一题,来自LeetCode 605. Ca

2020-06-12 14:10:31 265

原创 [杂]解决“Windows无法安装到这个磁盘 选中的磁盘具有MBR分区表.....”问题(不清空非系统盘数据)

问题描述将实验室主机从Win7升级到Win10系统的过程中,遇到了“Windows无法安装到这个磁盘 选中的磁盘具有MBR分区表。在EFI系统上,Windows只能安装到GET磁盘。”的问题。针对此问题,网上有很多解决方法。其中一种比较直接的方法就是 通过命令提示符CMD,把磁盘从MBR格式转换为GPT格式。注:将磁盘从MBR格式转成GPT格式会清空磁盘里的所有数据,GPT转换为MBR也同样如此。由于本人在升级系统前的想法是:①将系统盘(C盘)格式化;②系统升级完成后再将程序盘(D盘)选择性

2020-05-24 18:34:15 1344 1

原创 [LeetCode]53. Maximum Subarray(暴力穷举+Dynamic Programming+Kadane)

[LeetCode]53. Maximum Subarray(暴力破解+Dynamic Programming+Kadane)一、问题描述二、暴力破解三、Dynamic Programming3.1 Dynamic Programming关键步骤3.1.1 定义子问题3.1.2 设置边界和初始条件/递推基3.1.3 方程/递推关系3.2 代码四、Kadane4.1 算法描述4.2 代码新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列

2020-05-17 15:57:34 456 2

空空如也

空空如也

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

TA关注的人

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