5 Maricat4

尚未进行身份认证

我要认证

暂无相关简介

等级
TA的排名 24w+

图形学基础-变换

图形学基础-变换2D transformations: rotation, scale, shearHomogeneous coordinates(齐次坐标)Composite transform(变换复合)3D transformations(3D变换)Viewing (观测) transformation(视图变换相关)View (视图) /Camera transformation (视图变换)Projection (投影) transformationOrth

2020-09-07 21:01:53

Bolt介绍及基于其的实例

Bolt介绍概要Variables-----变量容器,包含变量名称,变量类型,值,不同类型的变量容器可在不同作用域内被调用。Types—每个Unit和Variables都有类型,支持导入自定义类型。Unit-----组成Graph的基本单元。Group—对unit分组管理的工具。Graph----由Unit组成的流程图或由状态组成的状态图。包含Flow Graph和State Graph.Machine—支持执行Graph的组件。包含Flow Machine与 State Machine.Bo

2020-09-01 15:12:17

二叉树的遍历

关于二叉树的遍历深度优先遍历先序遍历,先访问根节点,再访问子树。中序遍历,先访问左子树(右子树),再访问根节点,后访问右子树(左子树)。后序遍历,先访问子树,再访问根节点。广度优先遍历层次遍历,优先访问离根节点近的节点。对于树节点的定义struct TreeNode{ TreeNode* left; TreeNode* right; int val; TreeNode(int t = 0):val(t),left(nullptr),right(null

2020-08-16 12:31:55

反转链表

反转链表双指针递归方式struct ListNode{ ListNode* next; int val; ListNode(int t=0):val(t),next(nullptr){}};ListNode* reverseList(ListNode* node){ ListNode *head = nullptr; //利用头插法进行反转 //head指向已反转好的第一个节点 //node指向未反转的第一个节点 //将node

2020-08-14 11:10:26

进程间通信---如何避免竞争条件

进程间通信—如何避免竞争条件竞争条件:有两个或多个进程读写某些共享数据,而最后的结果取决于进程运行的精确时序,称为竞争条件(race condition)。进程间通信的三个问题:如何传递?如何确保两个或更多的进程在关键的活动中不会出现交叉?如何确保进程按正确的顺序?这三个问题中的两个问题对于线程来说是同样适用的,第一个问题(即传递信息)对线程而言比较容易,因为他们共享一个地址空间(在不同地址空间需要通信的线程属于不同进程之间通信的情形)。但是另外两个问题(需要梳理清楚并保持恰当的顺序)同样适

2020-07-18 11:29:04

C++—— =delete和=default

C++—— =delete和=default  函数定义中末尾会带这两个表达式,这分别表示deleted function(弃置函数)和default function(默认函数)。其中=default仅对特殊成员函数与比较运算符函数 (C++20 起)允许。  特殊成员函数:默认构造函数复制构造函数移动构造函数 (C++11 起)复制赋值运算符移动赋值运算符 (C++11 起)析构函数  比较运算符函数:==、!=、<、<=、> 和 >=。(形如,ope

2020-07-16 08:12:52

最大连续子数组和与积

最大连续子数组和与积和问题描述:给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。示例:输入: [-2,1,-3,4,-1,2,1,-5,4],输出: 6解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。暴力求解法  对于一个整数数组,他所有的连续子树组的个数可以通过归纳求得:以第1个元素为首的连续子数组有n个;以第2个元素为首的连续子数组有n-1个;……以第n个元素为首的连续子数组有1个;因此总共有:sum=∑i=1

2020-06-28 21:50:42

STL算法与数据结构---堆有关操作以及优先队列

STL算法与数据结构—堆有关操作以及优先队列本文将STL中的堆有关算法,做了些整理,以及扒出了它的源代码(去除了许多不必要的版本控制代码),并简单的注释了他们的大概运行过程。除示例代码以外,其余代码,均可以在GNU7.2.0中找到。堆操作汇总Heap operations,Defined in header <algorithm>is_heap(C++11)checks if the given range is a max heap (function templa

2020-05-27 15:14:58

LeetCode-1277统计全为 1 的正方形子矩阵

LeetCode-1277统计全为 1 的正方形子矩阵题目:给你一个 m * n 的矩阵,矩阵中的元素不是 0 就是 1,请你统计并返回其中完全由 1 组成的 正方形 子矩阵的个数。这是一个动态规划问题,有一些值得注意的地方。动态规划的思想就是将当前问题,拆成子问题,并且由子问题的值组合得到当前问题的值。这样我们就可以通过遍历小问题,得到我们想要的大问题的值。通常小问题的值,是很容易求得的。一般来说,我们经常会保存最优值来组合得到更大问题的值。在这个问题中,最优值对求解更大问题的值却没有帮助,因此我们

2020-05-24 22:30:07

python 基础2

python 基础2一些python基础知识,以防忘记。以下除了代码部分,大部分都来自与python官方文档,有许多删减,少许是与C++的比对。逻辑值检测任何对象都可以进行逻辑值的检测。一个对象在默认情况下均被视为真值,除非当该对象被调用时其所属类定义了 __bool__() 方法且返回 False 或是定义了 __len__() 方法且返回零。 1下面基本完整地列出了会被视为假值的内置对象:被定义为假值的常量: None 和 False。任何数值类型的零: 0, 0.0, 0j, Decim

2020-05-22 14:01:27

python基础1

python基础1一些python基础知识,以防忘记行与缩进python使用缩进来表示代码块,不需要使用大括号eg:# 判断条件没括号if True: print(1)else: print(2)# while循环写法while True: print(1)多行语句Python 通常是一行写完一条语句,但如果语句很长,我们可以使用反斜杠来实现多行语句。#不缩进对齐也行,最好缩进对齐total = item1 + \ item2 + \ ite

2020-05-21 09:29:20

堆、堆排序与优先队列

堆、堆排序与优先队列堆(heap)  堆(Heap)是计算机科学中一类特殊的数据结构。堆通常用数组来实现。把堆近似看作一棵完全二叉树(最底层可能不是完全填满的,如下图),堆中结点的值总是不大于或不小于其父结点的值。  根结点最大的堆叫做最大堆或大根堆。  根结点最小的堆叫做最小堆或小根堆。  最小堆示例:  表示堆的数组AAA有两个属性:A.lengthA.lengthA.lengt...

2020-04-26 17:18:10

0-1背包问题

0-1背包问题背包问题(Knapsack Problem)  问题描述:一个旅行者准备随身携带一个背包,可以放入背包的物品有nnn种,物品jjj的重量和价值分别为wj,vj,j=1,2,…,nw_j,v_j,j=1,2,…,nwj​,vj​,j=1,2,…,n,如果背包的最大重量限制是bbb,怎样选择放入背包物品以使得背包的价值最大?  这是一个组合优化问题,设xjx_jxj​表示装入背包的...

2020-04-23 09:21:23

C/C++中基本的内存管理工具

C/C++中基本的内存管理工具new操作符以及相应的操作符函数new/delete,new[]/delete[]  对于new/delete,new[]/delete[],他们均为C++的运算符。他们的使用:string *sp = new string;//单个对象string *arr = new string[10];//10个对象delete sp;delete[] ar...

2020-04-18 20:23:53

矩阵链相乘问题

矩阵链相乘问题  问题描述:考虑nnn个矩阵的乘积:A1A2…AnA_1A_2…A_nA1​A2​…An​,确定最优的乘法顺序(最优括号化方案),使得标量(数值)乘法次数最少。其中,AiA_iAi​为$ p_{i-1}⨯pi矩阵,矩阵,矩阵,i=1,2,…,n$。  对于两矩阵元素相乘,结果矩阵的每一个元素,由原先两矩阵的行列对应元素相乘。因此,假设假设A1为m×nA_1为m\times nA...

2020-04-03 17:16:45

最长公共子序列问题

最长公共子序列问题  问题描述:给定两个序列X,YX,YX,Y(可以把它们视作字符串),求他们的最长公共子序列。例如X="BCAB",Y="BDACB"X="BCAB",Y="BDACB"X="BCAB",Y="BDACB",其最长公共子序列为BCB,BABBCB,BABBCB,BAB。一个给定序列的子序列,就是将给定序列零个或多个元素去掉之后的序列。例如X="BAC"X="BAC"X="BAC...

2020-04-02 11:01:17

钢条切割问题

钢条切割问题问题描述:给定一段长度为n英寸的钢条和一个价格表pi(i=1,2……,n)p_i(i=1,2……,n)pi​(i=1,2……,n),求切割钢条方案,使得收益rnr_nrn​最大。(假设切割工序本身没有成本支出)价格表样例:长度iii12345678910价格pipipi1589101717202430假设收益长度为n...

2020-04-01 21:09:49

机器学习基本概念

机器学习基本概念基本术语样本(sample)/示例(instance): 对事物的抽象化描述李明:(学号=“201610311”, 专业=“计算机”, 年龄=“23”)xix_ixi​: (xi1x_{i1}xi1​; xi2x_{i2}xi2​;xi3x_{i3}xi3​)属性(attribute)/特征(feature): 事物某方面的描述(一个样本可以有多种属性)学...

2020-03-16 17:19:56

lambda表达式

lambda表达式lambda表达式的定义​ 对于可调用的解释:对于一个对象或一个表达式,如果可以对其使用调用运算符(调用运算符为()),则称它为可调用的。即,如果e是一个可调用的表达式,则我们可以编写代码e(args),其中args是一个逗号分隔的一个或多个参数的列表。​ 一个lambda表达式表示一个可调用的代码单元。我们可以将其理解为一个未命名的内联函数。与...

2020-03-10 23:51:25

STL-迭代器中的traits

STL-迭代器中的traits​ STL中算法通过迭代器访问容器时,有时不仅仅需要知道元素是什么,还想用到元素的相应类型(声明一个变量之类)。STL中利用traits编程技巧来实现。它通过在每一种迭代器中声明了类型名。再通过iterator_traits来萃取类型。最终通过iterator_traits来获取类型。​ 为什么要通过iterator_traits来获取类型?这是因为,原生指针...

2020-02-22 13:14:57

查看更多

勋章 我的勋章
  • 签到新秀
    签到新秀
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv2
    勤写标兵Lv2
    授予每个自然周发布4篇到6篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 分享小兵
    分享小兵
    成功上传3个资源即可获取