自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 资源 (1)
  • 收藏
  • 关注

原创 AutoCAD二次开发经验总结

AutoCAD二次开发踩坑总结

2023-01-18 17:38:41 1107

原创 不限速高速下载

网盘不限速下载

2022-05-10 20:00:10 616

原创 Matlab求均方根

使用rms()函数即可轻松解决。

2022-03-31 17:33:07 4921

原创 Matlab将Simulink模型保存为高清图片

问题:Simulink模型由于太大,直接截图会导致清晰度很低。解决方法:使用saveas()函数,使用方法是打开要保存为图片的Simulink模型,然后运行以下脚本即可在脚本所在的目录下生成图片。第一个参数不用修改,第二个参数是指定图片名称,第三个参数是指定图片格式。运行以下脚本会生成名为“model.tiff”的图片。saveas(get_param(gcs,'handle'),'model','tiff');...

2022-03-25 10:46:39 5425

原创 指针函数和函数指针简要说明

指针函数:返回指针的函数;函数指针:只想函数的指针;指针函数int* fun1(int ,int); //指针函数的声明函数指针typedef int* (*fun_ptr)(int , int); //用typedef定义函数指针类型fun_ptr,这样较方便使用fun_ptr fun=fun1; //定义了一个函数指针fun指向了指针函数fun1fun(10,20);//通过函数指针fun调用了指针函数fun1...

2022-03-19 10:41:34 144

原创 十进制转换为其它进制

采用递归转换进制,优点是代码简洁。#include <iostream>using namespace std;void conv(int num,int jinzhi){ if(num>=jinzhi) conv(num/jinzhi,jinzhi); cout<<num%jinzhi;}int main(){ int num,jinzhi; cin>>num>>jinzhi; cout<<"转换后的结果为:"&

2022-03-06 11:21:07 127

原创 UnionLotto随机摇号程序

双色球

2022-02-17 20:22:48 782

原创 Matlab把十六进制字符串向量转换为十进制数字向量

在读取Excel电子表格数据时,常需要把十六进制的字符串向量转换为十进制的数字向量。本人在网上查阅了许久,始终未找到简单且正确的方法,故在此记录,方便遇到同样问题的人参考。方法很简单,只需要调用Matlab的hex2dec()函数即可!...

2021-10-30 10:59:11 4731

原创 Matlab绘制模糊控制器的隶属函数和输出曲面

FPI=readfis('FPI');figure(1);subplot(221);plotmf(FPI,'input',1);subplot(222);plotmf(FPI,'input',2);subplot(223);plotmf(FPI,'output',1);subplot(224);plotmf(FPI,'output',2);figure(2);subplot(121);gensurf(FPI,[1 2],1);subplot(122);gensurf(FPI,[1

2021-10-13 17:34:13 3162

原创 Git常用操作记录

git branch -a 查看本地和远程分支git branch -vv 查看本地分支和远程分支的关联关系git branch -D branchname 删除本地分支git push origin --delete origin/branchname 删除远程仓库的分支git fetch origin 拉取最新的仓库数据,但是并未mergegit merge localbranch/origin/branch merge本地分支或者远程分支git log -2 查看前两条commit log

2021-10-12 22:01:37 79

原创 堆排序heap_sort

堆排序是利用了堆这种数据结构的性质来排序,时间复杂度:最好、平均、最坏的时间负载度都是O(nlogn)。基本思想是先把无序的数据构建为堆,然后把第一个元素和最后一个元素交换,交换过后,由于原来的堆结构被破坏,所以交换之后要把数据重新构建为堆。上code#include <iostream>#include <algorithm>using namespace std;void swap(int& L, int& R){ int tmp = L; L

2021-10-06 21:52:42 89

原创 C++ 归并排序merge_sort

归并排序的时间复杂度:最好O(nlogn),平均O(nlogn),最坏O(nlogn)。归并排序是稳定的排序算法。上code#include <iostream>using namespace std;void merge(int a[],int L,int M,int R){ const int ls = M - L; //这里实际上是L---M,因为传进来的M是M+1 const int rs = R - M + 1; //M+1--R int i=0, j=0, k=L

2021-10-06 11:49:58 85

转载 glob模式

所谓的 glob 模式是指 shell 所使用的简化了的正则表达式。星号(*)匹配零个或多个任意字符;[abc] 匹配任何一个列在方括号中的字符(这个例子要么匹配一个 a,要么匹配一个 b,要么匹配一个 c);问号(?)只匹配一个任意字符;如果在方括号中使用短划线分隔两个字符,表示所有在这两个字符范围内的都可以匹配(比如 [0-9] 表示匹配所有 0 到 9 的数字)。...

2021-10-04 10:55:34 170

原创 C++面试必问面试题

2022秋招过半,总结一下面试题:技术类问题:1.说一说C++的多态?2.C++的虚函数的原理?3.C++ STL中的list和vector的区别?4.C++的内存模型?5.说一说单例?6.引用和指针的区别?7.什么是线程安全和线程不安全?8.堆和栈的区别?9.如何避免内存泄漏?10.构造函数可以定义为虚函数吗?11.析构函数是否能够定义为虚函数?何时必须定义为虚函数12.说一说模板的原理?13.如何保证线程同步?14.new和malloc的区别?15.什么是原子操作?16

2021-09-30 21:40:34 185

原创 C++容器与迭代器

STL常用容器的迭代器

2021-09-30 21:27:19 66

原创 C++ STL中的vector和array的区别

C++软件开发面试中,遇到过一个问题:C++ STL中的vector和array的区别有哪些?当时本人并未回答出这个问题,因为之前从未用过array。区别主要有:vector是可变长数组,array是定长数组,array在声明时长度就定下来了。vector和array都是对基本的数组进行了封装,vector的数组是new出来的,在堆内存;array数组是在栈内存。vector封装了插入和删除成员函数,array并未提供删除和插入成员函数。...

2021-09-30 20:29:13 490

原创 C++ std::accumulate

C++中的accumulate是一个模板函数,要使用这个函数需要包含numeric这个头文件。#include <iostream>#include <numeric>#include <vector>int main(){ vector<double> vi = { 1.5,2,3 }; double res=std::accumulate(vi.begin(), vi.end(), 0.0); cout << res <&

2021-09-30 19:34:01 2071

原创 C++遍历

总结一下C++中的遍历方式for循环for_each循环C++11中的for循环#include <iostream>#include <thread>#include <algorithm>using namespace std;int f(int i){ cout << i << ' '; return 0;}int main(){ int a[] = { 0,1,2 }; for (int i = 0;

2021-09-19 09:40:05 239

原创 无重复字符的最长子串

首先,我们要明确子串的概念。所谓“子串”,是指连续的子字符串。采用滑动窗口的思想,可以简单快捷地求解问题。#define _SILENCE_STDEXT_HASH_DEPRECATION_WARNINGS #include <iostream>#include <hash_map>#include <algorithm>#include <string>using namespace std;int main(){ hash_map<

2021-09-11 19:25:20 62

原创 贪心算法的理解

说说自己对贪心算法的理解贪心算法的思想是每一步都做出最贪心的选择,从而希望达到最终的结果是最优的。贪心算法的优点是简单,但是缺点也很明显:不能保证最终结果是正确的,能否得出正确的结果可以说是靠运气。例如:一个箱子里有很多纸币,这些纸币的面值是1元、6元、7元。要求从箱子里取出张数最少的且面值之和等于某个值得纸币。当要凑够14元时,运用贪心算法可以得出正确的结果,只要取2张7元即可。当要凑够18元时,运用贪心算法不能得出正确结果。贪心算法得到的结果是2张7元 + 4张1元,共6张纸币;正确答案应该是3

2021-09-01 11:26:28 355

原创 哈希表冲突解决

哈希表在笔试中经常出现,笔者今天做一套笔试题竟然出现了两次,且考察的知识点都是解决哈希冲突问题,故特来记录一下。哈希表HashMap是一种用来提高查询效率的数据结构,其关键是哈希函数或者叫做散列函数,其实就是一个映射关系,作用是将key映射到数据的地址索引,从而达快速访问到数据的目的(因为哈希表的底层是数组实现的,所以有了索引就能很快地找到对应的数据)。常用的哈希函数,除留余数法,简单的说就是取模运算%,例如hash(key)=key%11题目一般会给定哈希函数,然后给定几个已有的key,然后给出一个

2021-08-31 22:17:29 292

原创 BFS和DFS解决迷宫问题

DFS:#include <iostream>using namespace std;int maze[80][80];int v[80][80];int dx[] = { 0,1,0,-1 }; //右、下、左、上int dy[] = { 1,0,-1,0 };int endx, endy;int startx, starty;int step=0;void dfs(int x, int y){ if (x == endx && y == endy)

2021-08-31 10:36:04 145

原创 数组初始化

直接给每个元素赋值int array[4] = {1,2,3,4};部分赋值,后面的全部为0int array[4] = {1,2};由赋值参数个数决定数组的个数int array[] = {1,2};数组元素的值是随机分配的int array[4] = {};实用方法:当初始化数组参数时,推荐使用 int array[4] = {0},这样可以把数组元素全都初始化为0;...

2021-08-30 10:39:37 110

原创 记录几个与Linux内核相关的命令

lsmod:查看装入内核的模块insmod:装入模块rmmod:删除内核模块modinfo: 查看某个内核模块的info

2021-08-22 17:52:43 71

原创 shell

学习了一段时间shell脚本,今天写一篇自己总结的学习shell脚本的基础知识的文章。shell基本语法在我个人看来,shell可以分为在终端上直接运行的shell,这种shell是一行一行执行的;另一种shell则是一种脚本文件.sh文件,类似于Windows下的批处理文件.bat文件。以下列举一些常用的shell命令:pwd: 当前所在路径ls: 列举当前路径下的文件。-l 以列表形式列出; -a 把隐藏文件也一起列出who: 列出当前登录的用户的信息cd : 切换路径. : .代表

2021-08-19 10:13:50 88

原创 模拟测试控制算法有效性(C++)

在没有试验条件的情况下,可以在电脑上简单模拟一下控制算法的有效性。主要的思想:对设定值、实际值的初始值、被控对象模型作出假设,而后设定控制步数(实际的控制系统时死循环,但是我们模拟的时候需要程序能够停下来),输出想要观察的变量。test.h#pragma once//定义结构体和宏#define KP 0.1f#define KI 0.2f#define KD 0.05fstruct PID{ float Kp; float Ki; float Kd;};struct Erro

2021-08-15 18:04:42 258

原创 C++优先队列使用方法

1. 前言最近在学习数据结构和算法,了解到优先级队列一般用堆这种数据结构来实现。实现方法不难,但是C++的STL库本身带有优先级队列priority_queue这种数据结构,只需要#include <queue>即可使用。其成员函数与普通的队列queue相似,都具有push、pop、top等成员函数。2. 使用方法#include <iostream>#include <queue>#include <vector>#include <

2021-06-29 21:51:17 496 2

原创 C++实现希尔排序、归并排序和快速排序

#include <iostream>using namespace std;//希尔排序int* newarray = new int[12];void shell_sort(int a[],int len){ int h = 1; while (h < len / 2) { h = 2 * h + 1; } while (h >= 1) { for (int i = 0; i < len; i++) { for (int j =

2021-06-25 17:04:47 180

原创 C++实现链表

头文件:定义节点和链表数据类型。实现构造、插入、删除等操作。#pragma once#include <cstdlib>#include <iostream>using std::cout;using std::endl;struct linknode{ int val; linknode* next;};class linklist{public: linklist(); ~linklist(); bool insert(int); //尾插 值

2021-05-22 10:45:40 783

原创 分享自己的CVTE实习生求职之旅

首先,再CVTE的官网上投递了简历,投递的岗位是嵌入式应用开发工程师。然后过了一段时间,通过CVTE的微信公众号了解到自己的简历通过了。之后就是在线笔试。笔试题有选择题和2道编程题,其中选择题有的好像是不定项选择题。过了一段时间发现自己笔试通过了,然后过了一周左右,有人打电话给我要我预约电话面试的具体时间。预约好时间后,过了一段时间,电话面试,面试官感觉是个搞技术的,主要问了一些C和C++的一些知识,还问了项目的一些具体情况,面试官给人的感觉挺好的,会根据你回答的情况来提问题。两三天之后面试结果就出来,

2021-05-20 19:15:21 16421

原创 C++实现矩阵转置

#include <iostream>using namespace std;void zhuanzhi(int a[][3], int m, int n){ int temp = 0; for (int i = 0; i < m; i++) for (int j = i + 1; j < n; j++) { temp = a[i][j]; a[i][j] = a[j][i];

2021-05-13 21:06:23 1132

原创 C++实现插入排序

C++实现插入排序思路:1.从数组的第二个数据开始往前比较,即一开始用第二个数和他前面的一个比较,如果 符合条件(比前面的大或者小,自定义),则让他们交换位置。2.然后再用第三个数和第二个比较,符合则交换,但是此处还得继续往前比较,比如有 5个数8,15,20,45, 17,17比45小,需要交换,但是17也比20小,也要交换,当不需 要和15交换以后,说明也不需要和15前面的数据比较了,肯定不需要交换,因为前 面的数据都是有序的。3.重复步骤二,一直到数据全都排完。//插入排序void ins

2021-05-07 22:32:12 1203

原创 C++实现冒泡排序和选择排序

C++实现冒泡排序和选择排序#include <iostream>using namespace std;//冒泡排序template<class T>void bubble_sort(T* a, T n){ for(int i=n;i>1;i--) for (int j = 0; j < i-1; j++) { if (a[j] > a[j + 1]) {

2021-05-06 22:44:46 149

原创 自我介绍

自我介绍这是我在CSDN上写的第一篇文章,所以我想先做个自我介绍。我就读于某211大学,本科毕业后保送到原来的大学继续深造读研究生。我的本科专业是纯机械,研究生专业也是机械,但是研究的却是电机控制。电机控制涉及到嵌入式、电机控制、控制算法等知识。欢迎大家和我交流,我的邮箱是[email protected]...

2021-04-25 09:25:14 59

DAC8554.rar

CPU是STM32F407,驱动DAC8554芯片输出4路独立可控的模拟电压。亲自调试过,原创。

2021-04-25

空空如也

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

TA关注的人

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