自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(56)
  • 资源 (7)
  • 收藏
  • 关注

原创 接收字符串或者字符数组返回值的办法

同样return返回时,如果返回一个值,函数会将该值拷贝一份以提供给主调函数使用,返回的是一个指针(也就是地址),自然拷贝的就是一个地址,供主调函数使用。这个程序的输出结果是不确定的,因为我们都知道,局部变量的生存期是就在块内部,这里也就是在函数retstring()的内部,在main函数中,name的内存空间已经被回收。C语言中的库函数,tmpnam()函数、getenv()函数等应该都是采用的这种方法,这也就是为什么,使用这样的函数的时候应该立即将返回结果拷贝一份的原因。3、 返回一个静态局部变量。

2023-10-30 10:19:49 764 1

原创 嵌入式交叉编译后遇到“version `GLIBC_2.34‘ not found”的有效解决方法

解决办法:在交叉编译的Makefile中加入静态编译即可,也就是把库编译到程序中,Makefile中加入-static关键字,使用静态链接。因为默认的都是动态链接,所以会识别出版本不同的问题。问题:嵌入式开发,交叉编译后的程序放到开发板上发现,version `GLIBC_2.34‘ not found”。原因分析:主要交叉编译是使用的glibc库和实际板子上使用的库不一致导致的。

2023-10-30 09:49:04 2457

原创 ZYNQ UltraScale MPSOC,使用PL端AXI_UART16550IP核,且在PS端控制下实现RS485通信,接收不同帧长报文数据-----中断方式

ZYNQ UltraScale MPSOC,使用PL端AXI_UART16550IP核,且在PS端控制下实现RS485通信,接收不同帧长报文数据-----中断方式。硬件环境:Xilinx ZynqMP XCZU15eg-ffvb1156-2-i软件环境:

2022-06-24 11:14:44 4240 6

原创 ZYNQ UltraScale MPSOC,使用PL端AXI_UART16550IP核,且在PS端控制下实现RS485通信-----轮询方式

ZYNQ UltraScale MPSOC,使用PL端AXI_UART16550IP核,且在PS端控制下实现RS485通信;硬件环境:Xilinx ZynqMP XCZU15eg-ffvb1156-2-i软件环境:Vivado2018.3一;下一篇讲述使用UART16550的中断模式接收多种帧长的报文数据,也即接收不定长数据。 ......

2022-06-24 11:04:14 1840 8

原创 PYQT5离线安装包,亲测有效,请在网盘下载

pyqt5离线安装包

2021-12-25 09:46:20 2883 2

原创 用递归方法实现二分查找,为了避免异常情况,首先判断上下限范围

用递归方法实现二分查找,为了避免异常情况,首先判断上下限范围int binarysearch(int source[],int low,int,high,int targetvalue){ if (low>high) return; int temp= (high-low)/2+low; if(source[temp]>targetvalue) binarysearch(source,low,temp-1,targetvalue); if(source[

2020-05-20 09:30:30 225

原创 指针函数和函数指针的区别以及定义

定义不同指针函数本质是一个函数,其返回值为指针。函数指针本质是一个指针,其指向一个函数。写法不同指针函数:int* fun(int x,int y);函数指针:int (*fun)(int x,int y);可以简单粗暴的理解为,指针函数的*是属于数据类型的,而函数指针的星号是属于函数名的。再简单一点,可以这样辨别两者:函数名带括号的就是函数指针,否则就是指针函数。...

2020-03-21 15:48:50 694

原创 C++实现统计字符串中,单词的总个数,不同单词的个数以及不同单词出现的频率

1;首先使用getline()输入一行字符串;2:以空格为分隔符,将字符串进行分割并存放在vector中;3:建立一个map(string,int),将vector中元素放入map中,以string作为键,每次出现一个就加一,则与键对应的值就是单词出现的频率;4:输出,每个单词及其出现的次数;// 统计单词出现的频率.cpp : 定义控制台应用程序的入口点。//#inclu...

2019-08-23 16:19:19 7816 5

原创 C++实现堆排序(最简易明了的解法,附加示意图讲解及源代码)

堆排序  堆排序是利用堆这种数据结构而设计的一种排序算法,堆排序是一种选择排序,它的最坏,最好,平均时间复杂度均为O(nlogn),它也是不稳定排序。首先简单了解下堆结构。堆  堆是具有以下性质的完全二叉树:每个结点的值都大于或等于其左右孩子结点的值,称为大顶堆;或者每个结点的值都小于或等于其左右孩子结点的值,称为小顶堆。如下图:同时,我们对堆中的结点按层进行编号,...

2019-07-15 22:46:01 3127

原创 给定一列非负整数,求这些数连接起来能组成的最大的数。

#include <iostream>#include <string>#include <vector>#include <algorithm>using namespace std;bool compare(string &a, string &b) { return (a + b) > (b + a);}...

2019-07-14 21:49:43 261

原创 C++实现字符串中查找子串,也即实现strstr函数

#include<iostream>using namespace std;int main(){ char *strstr(char *src,char *sub); char p[256]; char q[256]; cout<<"input the src:"<<endl; cin>>p; cout<<"inp...

2019-06-30 16:46:17 4352

原创 编程实现库函数strcat

#include<iostream>using namespace std;char *mystrcat(char *dest,char *src){ char *temp=dest;//保存首地址便于返回 while(*dest++); dest--;//把指针指向指向字符串结束符 while(*dest++=*src++); return temp;}int ...

2019-06-29 16:17:04 245

原创 找出01字符串中0和1连续出现的最大次数

#include<iostream>using namespace std;void calculate(char *src,int *max0,int *max1){ int temp0=0,temp1=0; while(*src) { if(*src=='0') { (*max0)++; if(*(++src)=='1') { if(...

2019-06-29 16:12:22 775

原创 鸡鸭分类问题

农场有n只鸡鸭排为一个队伍,鸡用“C”表示,鸭用“D”表示。当鸡鸭挨着时会产生矛盾。需要对所排的队伍进行调整,使鸡鸭各在一边。每次调整只能让相邻的鸡和鸭交换位置,现在需要尽快完成队伍调整,你需要计算出最少需要调整多少次可以让上述情况最少。例如:CCDCC->CCCDC->CCCCD这样就能使之前的两处鸡鸭相邻变为一处鸡鸭相邻,需要调整队形两次。输入描述:输入一个长度为N,且只...

2019-06-28 22:22:38 890

原创 leetcode 最佳时机买卖股票2,假设您有一个数组,其中第i个元素是第i天给定股票的价格。

假设您有一个数组,其中第i个元素是第i天给定股票的价格。设计算法以找到最大利润。 您可以根据需要完成尽可能多的交易(即,多次买入并卖出一股股票)。 但是,您可能不会同时进行多笔交易(即,您必须在再次购买之前卖出股票)思路:根据题意,相当于只要有利益就卖出股票,不断累积利益,直至最后的结果;class Solution {public: int maxProfit(vecto...

2019-06-07 21:10:49 4592 1

原创 杨辉三角 II ,给定一个非负索引 k,其中 k ≤ 33,返回杨辉三角的第 k 行

For example, givenk= 3,Return[1,3,3,1].class solution{public: vector<int>getRow(int rowIndex) { vector<int>res(rowIndex+1,0); res[0]=1; f...

2019-06-05 21:23:19 1156 1

原创 C++实现杨辉三角 * 给定一个非负整数 numRows,生成杨辉三角的前 numRows 行。

For example, givennumRows= 5,Return[ [1], [1,1], [1,2,1], [1,3,3,1], [1,4,6,4,1]]class Solution {public: vector<vector<int> > generate(int numRows) { ...

2019-06-05 20:40:37 984

原创 罗马数字转换为数字,借用map实现。

罗马数字包含以下七种字符:I,V,X,L,C,D和M。字符 数值I 1V 5X 10L 50C 100D 500M 1000例如, 罗马数字 2 写做II,即为两个并列的 1...

2019-05-21 20:31:56 161

原创 C++实现leetcode 两数之和,用头尾指针实现;

给定一个整数数组nums和一个目标值target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。示例:给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]clas...

2019-05-16 22:19:55 191

原创 C++实现 华为研发编程题(1)--删数(每隔两个数删除一个,直至剩下最后一个数)本题是约瑟夫环问题

有一个数组a[N]顺序存放0~N-1,要求每隔两个数删掉一个数,到末尾时循环至开头继续进行,求最后一个被删掉的数的原始下标位置。以8个数(N=7)为例:{0,1,2,3,4,5,6,7},0->1->2(删除)->3->4->5(删除)->6->7->0(删除),如此循环直到最后一个数被删除。输入描述:每组数据为一行一个整数n(小于等于10...

2019-05-16 20:13:43 1367

原创 C++实现 华为研发编程题(3)写出一个程序,接受一个十六进制的数值字符串,输出该数值的十进制字符串。(多组同时输入 )

解题思路:1;外面大循环控制数据不断输入; 2:输入一个字符串,将字符串第二位以后的每个16进制字符转换为整数; 3:每转换一个16进制数后,将其转换为对应的10进制数, 4:将每一位转换的10进制数相加就是最终的10进制数;#include<iostream&gt...

2019-05-15 20:34:36 1433

原创 C++实现 华为研发编程题(2)--明明的随机数

明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤1000),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。然后再把这些数从小到大排序,按照排好的顺序去找同学做调查。请你协助明明完成“去重”与“排序”的工作(同一个测试用例里可能会有多组数据,希望大家能正确处理)。InputParamn...

2019-05-15 19:50:34 436

原创 华为笔试题汽水瓶:“规定:三个空瓶换一瓶汽水。小张有十个空瓶,她可以换多少瓶汽水喝?”答案是5瓶,方法:先用9个空瓶子换3瓶汽水,喝掉3瓶满的再换,剩2个空瓶子。老板借你一瓶汽水,喝掉换一瓶还给老板

题目描述:有这样一道智力题:“某商店规定:三个空汽水瓶可以换一瓶汽水。小张手上有十个空汽水瓶,她最多可以换多少瓶汽水喝?”答案是5瓶,方法如下:先用9个空瓶子换3瓶汽水,喝掉3瓶满的,喝完以后4个空瓶子,用3个再换一瓶,喝掉这瓶满的,这时候剩2个空瓶子。然后你让老板先借给你一瓶汽水,喝掉这瓶满的,喝完以后用3个空瓶子换一瓶满的还给老板。如果小张手上有n个空汽水瓶,最多可以换多少瓶汽水喝?本题...

2019-05-15 16:32:10 4024

原创 C++实现用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型

思路如下:1、栈的特点是先进后出,而队列的特点是先进先出;2、因此,入队列的情况和入栈的情况一样stack.push(),用一个栈来模拟就可以了;3、而出栈为出栈顶的元素,也即和输入相反(先进后出);然而出队为先进先出,因此借助第2个栈,将第一个站的元素放入第2栈中,再将第2个栈中的元素出栈,也即翻转两次实现了先进先出;4、第2个栈为出队列用,当栈2为空时,将栈1中的元素入栈2;当...

2019-04-24 22:36:26 625

原创 C++实现重建二叉树,假设输入的前序遍历和中序遍历的结果中都不含重复的数字。如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回

解题思路如下:1、首先建立4个vector用来存放前序遍历和中序遍历的左右子树;2、由于前序遍历的第1个元素就是根节点,则在中序遍历中找到它记为Head,则中序遍历中Head左边的长度为Head的几个元素为中序遍历的左子树;同理在前序遍历中第1个元素右边长度为Head的几个元素为前序遍历的左子树;3、然后以Head为分界线,把他们的左右子树分别放入各自新建的vector中;4、接着...

2019-04-24 21:20:43 1423

原创 C++用递归的方法实现归并排序mergesort()

解题思路如下:1、确定数组的大小,以及输入数组中的元素值;2、将输入的数组进行分组归并;3、将整个数组分成左右两个数组,左右两个数组再向下分,直至子数组的元素少于2个时,子数组将停止分割;4、当左右子数组不能再分割,也是都是一个元素时,比较他们的大小,进行排序合并;5、再排序合并上一级子数组为两个元素的数组,接着再排序合并上一级子数组为四个元素的数组;直至到排序合并刚开始的两个...

2019-04-23 19:40:28 1082

原创 C++使用队列的链表形式实现基数排序radixsort()

思路如下:1、首先封装一个队列类Queue用链表形式实现,包括队列的插入元素、删除元素以及判断是否为空;这样就实现了一个队列2、接着实现基数排序的算法流程;3、建立数组队列用来保存基数为0~9的元素值(每个数从右向左取每一位);4、计算每个元素个位上是值,然后将该元素值放入个位数对应的队列中;5、依次计算十位、百位...........;等并放入相应的队列中;6、最后从队列...

2019-04-19 11:35:21 784

转载 十大经典排序算法分析与演示

本博文属于转载,转载地址为https://www.cnblogs.com/onepixel/articles/7674659.html#undefined。若原博主不同意立即删除。特此转载过来和大家一起学习。十大经典排序算法(动图演示)0、算法概述0.1 算法分类十种常见排序算法可以分为两大类:比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn)...

2019-04-16 15:36:16 136

原创 C++string中的find()和rfind()函数的区别

find函数和rfind函数均返回字符在字符串中出现的位置;不同的是find是正向搜查,而rfind是逆向搜查,但是最终两个函数返回的位置均是字符出现的正向位置,若有重复字符则rfind()返回的是逆向查找到的字符在正向的位置;测试代码如下:#include<iostream>using namespace std;int main(){ string str...

2019-03-26 22:05:15 3062

原创 C++实现输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,。

解题思路如下:1、判断数组的大小;2、将数组元素进行排序;3、当数组元素个数不小于K时,将数组的前K个元素取出放入另一个数组中4、返回另一个数组,则得到前K个小的元素;代码如下:class Solution {public: vector<int> GetLeastNumbers_Solution(vector<int> input, int ...

2019-03-21 09:52:31 2110

原创 C++实现数组中有一个数字出现的次数超过数组长度的一半。例如输入一个数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。

解题思路如下:1、将数组赋值给另一个数组,且求出其长度的一般length/2;2、遍历整个数组,且统计每个元素出现的次数与length/2比较;3、若结果大于该值输出该元素,否则输出0;具体代码如下:class Solution {public: int MoreThanHalfNum_Solution(vector<int> numbers) { ...

2019-03-20 19:26:25 463

原创 构建乘积数组,给定一个数组A[0,1,...,n-1],请构建一个数组B[0,1,...,n-1],其中B中的元素B[i]=A[0]*A[1]*...*A[i-1]*A[i+1]*...*A[n-1]

解题思路:1、首先确定A的大小,防止在接下来引用时出现数组越界情况;2、根据题意可以发现,新数组B中的成员B[i]是A中不包含A[i]的所有元素乘积;3、先求B【0】即A[1]*...*A[n];4、接着求B中其他元素,其他元素等于A中相应元素位置之前所有元素的乘积和之后所有元素的乘积,在本算法中分为两部分进行;首尾两部分乘积分别算出来后在相乘即为B中元素;具体代码如下:cla...

2019-03-16 19:24:11 1329

原创 C++实现写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号

解题思路:1、两个数异或相当于相加; 2、两个数与且左移一位相当于求进位,当进位为零时,异或的结果即为两个数之和; 3、若进位不为零,把第一步和第二步的结果看作两个数重复进行1、2,步骤,直至第二步结果为零;class Solution {public: int Add(int num1, int num2...

2019-03-13 20:10:32 1380

原创 输入一个链表,反转链表后,输出新链表的表头。

三种方法:第一种:采用栈,class Solution {public: ListNode* ReverseList(ListNode* pHead) { if(pHead==NULL) { return pHead; } ListNode * p=pHead; ListNod...

2019-03-12 22:05:05 1834

原创 输入一个链表,输出该链表中倒数第k个结点

解题思路:首先遍历链表,求得所有节点数为i;倒数第k个节点也就是正数第i-k的节点,即遍历i-k次,输出该节点值即可class Solution {public: ListNode* FindKthToTail(ListNode* pListHead, unsigned int k) { int i; ListNode* p = pLi...

2019-03-11 22:16:03 95

原创 C++的POW()函数用法介绍,也即幂函数的使用方法

pow()函数的原型为: #include &lt;math.h&gt; double pow( double base, double exp ); The pow() function returns base raised to the expth power. There's a domain error if base is zero and exp is ...

2019-03-11 20:33:00 34881 4

原创 C++实现矩形覆盖,我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?

解题思路;依次递增写几个矩形及其方法,可以发现是斐波那契数列;class Solution {public: int rectCover(int number) { int i; int f=0,f1=1,f2=2; if(number==0||number==1||number==2) return numbe...

2019-03-10 21:32:12 480

原创 C++实现变态跳阶梯,一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。

解题思路:同样写出依次递增的几个阶梯数及其跳法,可以发现其跳法呈等比数列,代码如下:class Solution {public: int jumpFloorII(int number) { if(number==0) return 0; else return (pow(2,number-1)); ...

2019-03-10 21:13:59 685

原创 C++实现跳台阶一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)

解题思路:本体的解题思路为找规律,依次递增写出几个阶梯数及其对应的跳法,可以发现,其规律是斐波那契数列,接着用循环的方法缩短时间,不使用迭代;class Solution {public: int jumpFloor(int number) { int f1=1; int f2=2; int f=0; ...

2019-03-10 21:04:10 984

原创 C++快速实现斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)

其中循环的方法比递归的方法时间复杂度更小,求解更快;第一种方法:递归:class Solution {public: int Fibonacci(int n) { if(n==0) return 0; else if(n==1) return 1; else retu...

2019-03-10 20:08:38 4421 1

ICM-20601中文手册6轴传感器

ICM-20601中文手册

2022-01-18

ICM-20601英文原版手册

ICM-20601英文原版手册

2022-01-18

联邦滤波各种结构性能与容错性分析

本文详细介绍了6中不同的联邦滤波结构,并详细分析了不同滤波器的容错的性能和滤波精度,此外还分析了基于卡方的故障检测理论,为联邦滤波的学习和了解 进行了总结和归纳

2019-04-12

CSV文件转化kml文件工具

本工具用来实现在谷歌地球中生成运动的轨迹的制作工具,将纬经高信息的.csv文件转化为.kml文件,进而在谷歌地球中显示运动轨迹

2018-10-24

严恭敏老师捷联惯导算法与组合导航原理讲义 PDF高清版,

西北工业大学严恭敏老师的捷联惯导算法与组合导航原理讲义 PDF高清版,是严老师的讲义与课件,分享出来和大家一起学习,

2018-08-17

zynq7000系列芯片PCB参考手册

赛灵思zynq7000系列芯片PCB参考手册,里面有关于在7000芯片设计中的一些参考资料和方法以及注意事项。

2018-06-12

赛灵思ZYNQ7020芯片技术手册

详细关于7020系列芯片技术手册,可以方便快速的查找所需要的技术资料,包括寄存器配置地址等信息

2018-05-15

空空如也

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

TA关注的人

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