自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 资源 (8)
  • 收藏
  • 关注

原创 动态规划学习

动态规划 算法题

2023-04-07 23:44:32 63

原创 如何在OLED12864显示uint16_t的方式

方法如下:uint16_t s=1234;uint8_t num[2];sprintf(num,"%x",s);OLED_ShowString(0,0,num,12);

2021-02-14 11:53:42 334

原创 二叉树非递归前中后遍历

#include<iostream>#include<stack>using namespace std; struct TreeNode{ int val; TreeNode* left; TreeNode* right; TreeNode(int _val) :val(_val),left(NULL),right(NULL) {}}; void preOrder(TreeNode *root); void postOrder(TreeNode *

2020-09-28 11:37:53 104

原创 深度理解C++对象

不同类型的指针变量占据的内存空间都是相同的,但是其指向的变量占用不同大小的存储空间。C++对象模型非静态数据成员被配置在每一个类对象内,静态数据成员则存放在类对象外成员函数也存放在类对象外虚拟函数则需要以下两个步骤支持:1每一个类产生一堆指向虚函数的指针,放在表格之中,这个表格就是虚函数表;2 每一个类对象被安插一个指针,指向相关的虚函数表,称为虚指针,它的设定和充值都有构造函数、析构函数和复制运算符自动完成的。 每一个类所关联的type_info object也经由虚函数表指出(用来支持r.

2020-09-19 17:36:57 330

原创 关于p-nucleo-wb55 Firmware upgrade service出错的解决办法

STM32WB55系列比较新,网上较多的都是关于它的介绍,在学习使用中出错了比较难找到答案。本着记录以及帮助后来者,我在这分享一个困扰了我接近两天的问题的解决方法。前阵子购买了关于STM32WB55的板子P-nucleo-wb55,由于我要使用的无线协议和板子默认的无线协议不一样,因此我需要动手更换无线协议栈,这些无线协议在STM32WB package内有。使用的软件是STM32CubePr...

2020-04-21 15:39:04 912

原创 simplicity unresolved inclusion "xxx.h"

simplicity 软件刚学习使用,在新建工程时会遇到一种问题叫unresolved inclusion “xxx.h”,去silicon 官网的论坛看了很久也是有点看不明白,懵懵懂懂中,觉得类似是像kevil的使用那样,要包含头文件所在的文件夹,注意是要具体到包含该头文件的最后的一个文件夹。解决方法是在project->properties->c/c++ general->...

2020-02-25 14:19:01 314

原创 距离顺序排列矩阵单元格

class Solution {public:vector<vector> allCellsDistOrder(int R, int C, int r0, int c0) {vector<vector> res(R*C,vector(3));//数组第三个位置存放两点的曼哈顿距离int num=0;for(int i=0;i<C;i++){for(int...

2020-02-24 20:47:19 139

转载 红黑树与AVL树,各自的优缺点总结

本文内容来自链接:https://www.jianshu.com/p/37436ed14cc6特意转载来方便学习RB-Tree和AVL树作为BBST,其实现的算法时间复杂度相同,AVL作为最先提出的BBST,貌似RB-tree实现的功能都可以用AVL树是代替,那么为什么还需要引入RB-Tree呢?红黑树不追求"完全平衡",即不像AVL那样要求节点的 |balFact| <= 1,它只要...

2020-02-19 11:56:08 1934

转载 详解STL中的map和hash_map区别

在网上看到有关STL中hash_map的文章,以及一些其他关于STL map和hash_map的资料,总结笔记如下:1、STL的map底层是用红黑树实现的,查找时间复杂度是log(n);2、STL的hash_map底层是用hash表存储的,查询时间复杂度是O(1);3、什么时候用map,什么时候用hash_map?这个药看具体的应用,不一定常数级别的hash_map一定比log(n)级别的...

2020-02-19 11:48:03 254

原创 STL 容器配接器

以底部容器完成所有工作,而具有这种修改某物接口而成为另一种风貌的性质者称为配接器, 因此STL stack queue priority_queue都称为容器配接器。stackstack是一种先进后出的数据结构,不允许有遍历行为。STL是以deque作为缺省情况下的stack底部结构。(deque为底部结构并封闭头部开口)。在容器deque中的命名为push_back() pop_back...

2020-02-19 11:19:25 313

原创 STL deque

deque是一种双向开口的连续线性空间,双向开口意思是可以在头尾两端分别做元素的插入和删除操作。vector其实也可以从头尾两端进行操作,从技术观点,但是效率奇差,无法接受。deque和vector的最大差异,一在于deque允许常数时间对头端进行元素的插入或移除操作。二在于deque没有所谓的容量观念,因为它是动态地以分段连续空间组合而成,随时可以增加一段新的空间拼接起来。deque实现的复...

2020-02-18 23:03:03 140 1

原创 STL list

与vector的连续线性空间比,list 的好处是每次插入或删除一个元素,就配置或释放一个元素空间,对空间的利用很精准,且插入或删除都是常数时间。list 和vector是最常用的容器。STL list中 list是一个双向链表,其有一个重要的性质是插入操作(insert)和接合操作(splice)都不会造成原有的list迭代器失效,这在vector是不成立的,list的元素删除操作只有指向被删...

2020-02-18 16:52:29 247

原创 STL vector

vector与array对比,最大的差别在于空间的运用的灵活性,vector是动态空间,随着元素的加入,它的内部机制会自行扩充空间以容纳新元素。vector的实现技术,关键在于其对大小的控制以及重新配置时数据移动效率。扩充空间要经过配置新空间、数据移动、释还旧空间的步骤。vector采用的数据结构很简单,为线性连续空间,它以两个迭代器start和finish分别指向配置得来的连续空间中目前已使...

2020-02-18 13:25:29 173

转载 尾调用与尾递归优化

〇、是为序 以前也看到过尾递归及其优化,但在当时并不完全能够理解,最近几天陆陆续续复习了一下《汇编语言》和《自己动手写操作系统》两本书,对于函数调用背后的栈机制有了更加清晰的理解,回过头来看尾递归就觉得容易理解多了。就像阮一峰老师在下文中所写的那样,栈溢出在递归程序编写过程中是常会出现的错误,但有时把递归程序改写成非递归可能并非易事,此时考虑一下采用尾递归或者相关优化技术就非常有必要,虽然这篇...

2020-02-17 15:03:16 157

原创 1325. 删除给定值的叶子节点

给你一棵以 root 为根的二叉树和一个整数 target ,请你删除所有值为 target 的 叶子节点 。注意,一旦删除值为 target 的叶子节点,它的父节点就可能变成叶子节点;如果新叶子节点的值恰好也是 target ,那么这个节点也应该被删除。也就是说,你需要重复此过程直到不能继续删除。来源:力扣(LeetCode)链接:https://leetcode-cn.com/prob...

2020-02-16 15:58:29 282

原创 101. 对称二叉树

给定一个二叉树,检查它是否是镜像对称的。例如,二叉树 [1,2,2,3,4,4,3] 是对称的。/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) :...

2020-02-15 16:08:59 63

原创 437. 路径总和 III

给定一个二叉树,它的每个结点都存放着一个整数值。找出路径和等于给定数值的路径总数。路径不需要从根节点开始,也不需要在叶子节点结束,但是路径方向必须是向下的(只能从父节点到子节点)。二叉树不超过1000个节点,且节点数值范围是 [-1000000,1000000] 的整数。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/path-sum...

2020-02-14 21:50:11 86

原创 671. 二叉树中第二小的节点

给定一个非空特殊的二叉树,每个节点都是正数,并且每个节点的子节点数量只能为 2 或 0。如果一个节点有两个子节点的话,那么这个节点的值不大于它的子节点的值。给出这样的一个二叉树,你需要输出所有节点中的第二小的值。如果第二小的值不存在的话,输出 -1 。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/second-minimum-node-...

2020-02-14 15:53:03 86

原创 leetcode 897. 递增顺序查找树

给定一个树,按中序遍历重新排列树,使树中最左边的结点现在是树的根,并且每个结点没有左子结点,只有一个右子结点。/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(in...

2020-02-13 21:16:06 73

原创 543. 二叉树的直径

给定一棵二叉树,你需要计算它的直径长度。一棵二叉树的直径长度是任意两个结点路径长度中的最大值。这条路径可能穿过根结点。示例 :给定二叉树 1 / \ 2 3 / \ 4 5 返回 3, 它的长度是路径 [4,2,1,3] 或者 [5,2,1,3]。注意:两结点之间的路径长度是以它们之间边的数目表示。来源:力扣(LeetCo...

2020-02-13 17:21:03 73

原创 STL源码剖析:hashtable

hashtable(散列表)数据结构,在插入、删除、搜寻操作上具有常数时间表现,而且这种表现是以统计为基础的,不需要依赖输入元素的随机性。使用hash function,可能会使得不同的元素被映射到相同的位置(也就是相同的索引),这就是碰撞问题,通常有以下的解决方法:线性探测、二次探测、开链等做法。线性探测负载系数,元素个数除以表格大小,负载系数永远在0-1之间,除非采用开链策略。当has...

2020-02-12 18:20:29 261

原创 STL源码剖析 关联式容器

上一章的篇幅有点长,这里简单记录一下利用了红黑树为底层机制的几个关联式容器。set /multisetset特性是,所有元素会根据元素的键值自动被排序,set元素的键值就是实值,实值就是键值,不允许两个元素有相同的键值。不能通过set的迭代器改变set的元素值,因为其值是其键值,关系到set元素的排列,如果改变set元素值会严重破坏set组织,在原理上,setiterator被定义为红黑树中...

2020-02-12 16:06:16 91

原创 STL源码剖析(三)红黑树原理

红黑树的大名以及关于关联式容器用的比较少,想一探究竟,于是先跳过了序列式容器。本博客主要记载比较重要以及自己理解的部分。红黑树红黑树是二叉搜索树,且满足一下规则1 每个节点不是红色就是黑色(在代码上用bool类型0/1分别表示)2 根节点为黑色3 如果节点为红色,其子结点必须为黑。(看过一些说法,就是不能子结点和父节点同时为红)4 任一节点至NULL(树尾端)的任何路径,所含之黑节点数...

2020-02-12 11:52:44 165

原创 STL源码剖析(二)

迭代器迭代器是一种行为类似指针的对象,而指针的各种行为中最常见也最重要的是内容提纲(dereference)和成员访问,因此迭代器最重要的编程工作是对operator*和operator->进行重载工作。参考auto_ptr的代码,重点以下两行:T& operator *()const { return pointee;}Toperator->()const{ retu...

2020-02-07 22:53:17 170

原创 STL源码剖析(一)

STL源码剖析(一)SGI STL的配置器与众不同,与标准规范不同,其名称是alloc而非allocator,且不带任何参数。因此要采用SGI配置器需要这样写 :vector<int ,std::alloc> iv;其实SGI 也定义有了一个标准的空间配置器std::allocator,但是其效率不佳,只是把C++的new 和delete包装起来而已。STL allocator...

2020-02-06 23:07:03 1217 2

转载 quartus波形仿真破解MODELSIM

(1)对于Quartus14.0安装时自动安装了modelsim的ae和ase两个版本,分别位于D:\Program Files\altera\14.0\modelsim_ase和D:\Program Files\altera\14.0\modelsim_ae目录下(根据自己的安装路径而定)。其中ae是免费的,包含有altera的FPGA芯片,而ase除了altera的外,还有xilinx的,库更...

2018-03-22 16:45:59 3176

转载 [转载]新型按键方法

转载来自: https://www.amobbs.com/forum.php?mod=viewthread&tid=4308630&page=1 不过我在网上游逛了很久,也看过不少源程序了,没有发现这种按键处理办法的踪迹,所以,我将他共享出来,和广大同僚们共勉。我非常坚信这种按键处理办法的便捷和高效,你可以移植到任何一种嵌入式处理器上面,因为C语言强大的可移植性。 同时,这里面用到了一些分层的

2017-10-16 12:51:56 197

原创 浅谈强化学习(一)

关于强化学习的基础内容,什么是强化学习,以及关于K摇臂赌博机的两种算法

2017-04-06 22:47:39 1240

javascript第二版、HTML第五版 c++MFC activex提高版

最近做着相关的项目,用到其中的知识,分享学习资料三件套 javascript第二版、HTML第五版 c++activex提高版

2018-07-30

ALTIUM DESIGNER 破解

亲自绝对可以用 里面包含了PATCH.EXE和AD10keyGen.exe

2018-05-06

stdafx.h stdafx.cpp

stdafa.h stdafa.cpp

2018-04-16

K_MEANS.M..................

k_means.m MATLAB,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,

2017-11-08

Altium.Designer.v10.0破解文件.rar

破解方法: 1.运行AD10KeyGen,点击“打开模板”,加载license.ini,如想修改注册名,只需修改: TransactorName=Your Name 其中Your Name用你自己的名字替换,其它参数在单机版的情况下无需修改; 2.点击“生成协议”,保存生成的alf文件(文件名任意,如“jack ”),并将其放到你的安装目录下; 3.将patch.exe放到你的安装目录下,运行patch,对安装目录下的dxp.exe文件补丁,注意运行破解时软件没有运行; 4.启动DXP,运行菜单DXP->My Account,点击Add Standalone License file,加载前面生成的license(.alf)文件后即能正常使用了。 注意: 1.局域网内用同一license不再提示冲突 2.仅供学习研究使用,勿用于非法用途。

2017-10-17

模式识别 SVM MATLAB程序

基于MATLAB的SVM 供给大家学习啊啊啊啊 啊 啊啊啊啊啊啊

2017-10-15

网易公开课斯坦福大学吴恩达机器学习讲义

忘了从哪下载回来的讲义 全英讲义 上传在这方便大家学习

2017-10-15

Keil.STM32F3xx_DFP.1.4.0.pack

最近需要用到STM32F3,于是上网找了好久的关于MDK的这个版本PACK,为了让大家方便使用,就上传了 设置了最少的分数是为了赚点分数让我好下载其他资料

2017-10-15

空空如也

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

TA关注的人

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