4 dongfanglanyi

尚未进行身份认证

研究生期间从事OFDM算法研究,兴趣点:无线通信、计算机编程

等级
博文 47
排名 9w+

Matlab 保留大网格,去掉小网格

1、Matlab打开网格gridon或set(gca,'ygrid','on');set(gca,'xgrid','on');2、Matlab关闭set(gca,'yminorgrid','off');%关闭y轴上的小网格set(gca,'xminorgrid','off');%关闭x轴上的小网格...

2019-06-07 17:52:48

C++11新特性——lambda表达式

为何要写一篇博文呢?其实,系统学了C++一定会学到lambda表达式。不巧不巧,在秋招的浪潮中,我又被问到了关于lambda表达式,回过头想一想,其实lambda表达式在C++中应用挺广泛的。匿名函数,短小精悍,应该就是它的feature。好记性不如烂笔头,书上有路勤为径。、可调用对象可调用对象:对于任何一个对象或表达式,如果可以对其使用调用运算符,则称它为可调用对象。目前,C++支持四种...

2018-09-23 10:30:45

百词斩笔试题:一天内时针、分针、秒针转过的角度

题目描述给定一天内先后的两个时间,求时针、分针、秒针在时钟表盘上转动了多少角度。注意:为了保证计算精度,请使用double类型进行计算。输入描述输入两行,分别代表两个时间点A和B,A和B都为24小时制,B大于等于A,且都在同一天,时分秒用冒号(:)分割输出描述输出为三行,分别代表时针、分针、秒针在表盘上转动的角度,结果只保留整数部分。请勿四舍五入。实例输入00:00:0018:...

2018-09-22 16:23:36

TCP流量控制和拥塞控制基本思想

TCP超时重传基本概念TCP流量控制(滑动窗口)TCP拥塞控制慢开始和拥塞避免快重传和快恢复TCP超时重传查看某一机器上的某一端口是否可访问telnetipport抓取网卡某端口上的包tcpdump-ieth1'port21'其中,eth1是网卡名称,可通过ifconfig查询到本机的网卡名称。基本概念RTO重...

2018-09-06 12:27:00

对TCP三次握手和四次挥手的理解

为啥有三次握手,这不得不提到TCP的特点了,它是面向连接的,可靠的协议。所以,需要三次握手,让通信双方建立一种可靠连接。如果,我要客户端,你是服务器,下面,我要和你通信,就必须按照我们的协议来对暗号,这样我才把我知道告诉你。[toc]暗号:三次握手[首先]你是我的联络站,你的起始状态是监听Listen,而我是CLOSED第一次握手:客户端(我)先发送一个SYN包(SYN...

2018-09-06 12:25:11

Linux 编译和makefile的编写

whatis链接俗语理解链接就是把每个源代码独立地编译为目标文件.o,然后再把他们组装起来,整个组装的过程就是链接。链接的过程主要包含:地址和空间的分配、符号决议和重定位这些步骤。编译后的目标文件包含:(1)自己的数据和二进制代码(2)未解决符号表;如,extern变量<3>导出符号表(4)地址重定向表静态链接  ...

2018-09-05 22:29:24

c/c++ Linux下编程调试

strace跟踪系统调用gdbgdb定位coredump文件Valgrind内存分析工具strace跟踪系统调用strace-c将进程所有的系统调用用作一个统计分析并返回。strace-c./myapp重新打开一个窗口,执行killallmyapp,可观察到系统调用的分析统计。strace-ofilename将结果输出到文件filena...

2018-09-05 22:28:38

C++容器之 vector map set查找元素

前面两篇基本上讲解容器的增加删除,其实现实世界中对数据的查找才是最大的需求,下面主要围绕着容器的查找来讲解首先,由于vector没有实现find()方法,只能使用algorithm提供的find()方法。所以,直接在vector查找节介绍algorithm的find使用方法。目录[toc]1、vector查找vector自己并没有实现find方法,只能使用algortihm...

2018-09-04 22:03:19

C++容器之 vector map set 删除元素

前面一章节主要是针对容器的增加,可以明显看到关联容器和顺序容器的特点,下面主要介绍两类容器的删除和查找的区别目录1、vector的元素删除2、map的元素删除3、set的元素删除小结代码1、vector的元素删除vector的删除主要有三种方法:erase、pop_back和remove(algortihm)。iteratorerase(i...

2018-09-04 22:01:42

C++容器之vector map set 增加元素

C++大话容器之vectormapset说到C++的容器,我想第一个问题就是什么是容器,为什么要使用容器,若真非要用容器,那怎么使用呢?能想到这些问题,至少证明大家都有很强的探究精神。目录用[TOC]来生成目录:[TOC]Markdown和扩展Markdown简洁的语法何为容器?又为何需要容器  首先,学过C语言肯定知道咱们数据结构从物理结构上来说...

2018-09-04 16:15:46

c++ string转c 字符数组的方法

 c++string转换c字符串有三种方法:1.  constchar*string::data()  以字符数组的形式返回字符串内容,但不主动添加'\0',即char[string.size()]的值是未定义行为2.  constchar*string::c_str() 返回一个以'\0'结尾的字符数组3.  size_tstring::co...

2018-09-03 22:20:53

Cuda安装教程

前言:在安装cudatoolkit之前,先安装Microsoftvisualstudio2010/2013/2015都可以。根据cuda官网,下载cudatoolkit 下载本地文档。 解压到需要安装的文件夹下。注意,此时的只是临时放置在该文件夹下,后面安装完成后,该文件夹将自动不存在(直接自动删除)。 安装过程中,根据提示,选择自定义的安装。注意,此阶...

2018-08-31 20:37:10

c++ string 和int 转换

说真的,这个字符串处理始终是基本功,而字符串和整数之间的转换,可谓屡屡出现,使用频率很高的。最近,经常用到,但是,偶尔也会忘记。所以,在这里,记下来和大家分享一下。既然是C++,那么讲究的是高效,C++特性的转换。下面是C++的方法:一、C++高效安全方法(简单好用)1、sstream头文件中数字和字符串的互相转换stringstream智能类因为stringstream...

2018-08-31 19:28:15

数据结构基本功——排序算法(堆排序)

既然要说堆排序,那么自然先问的是什么是堆?    堆是具有下列性质的完全二叉树:每个结点的值都大于或等于其左右孩子结点的值,称为大顶堆;或者每个结点的值都小于或等于其左右孩子结点的值,称为小顶堆。    堆排序(Heap)是利用堆(假设利用大顶堆)进行排序的方法。知道了堆和堆排序的概念之后,那么怎么实现堆排序呢?目录一、堆排序的基本思想是:二、堆排序的C++实现...

2018-08-14 16:16:25

数据结构基本功——排序算法(直接插入排序和希尔排序)

前面两篇中冒泡排序和简单选择排序在武林中的没落,首先是因为希尔排序算法的到来,它终结了时间复杂度只能是O(n^2)的时代,同时呢,直接插入排序又因为是希尔排序算法灵魂的来源,所以,在这儿一并学习。一、直接插入排序1、直接插入排序的思想:将一个记录插入到已经排好序的有序表中,从而得到一个新的,记录数增1的有序表。可以想象一下理扑克牌的方法:(1)设前i张牌有序的(2)将第i+1张扑...

2018-08-14 11:28:40

数据结构基本功——排序算法(简单选择排序)

从上一篇冒泡排序中,相信大家也掌握到了要点:轮次,每轮相邻两个比较,把最大值(最小值)推到边缘。这一篇主要讲的简单选择排序,思想更加简单。目录1、简单选择排序的思想:2、复杂度分析3、C++实现1、简单选择排序的思想:通过n-i次关键字间的比较,从n-i+1个记录中选出关键字最小的记录,并和第i(1≤i≤n)个记录交换。2、复杂度分析无论最好还是最坏的情况:...

2018-08-14 11:18:44

数据结构基本功——排序算法(冒泡排序)

排序算法那么多,冒泡和简单选择排序却曾是武林中的绝世秘籍,那么他们为啥在当8年那么屌,原因是简单,还有就是根本没有超过O(n^2)时间复杂度的高招出现。为了学习这些秘籍,我觉得还是应该从秘籍的思想、复杂度、实现这三方面分析。目录冒泡排序的思想:复杂度分析C++实现冒泡排序的思想:每一轮都是前后两两比较,一共进行n-1轮每一轮的比较有两种方法: a[j] [j+1]...

2018-08-14 11:14:46

cin cin.get cin.getline getline getchar的区别

 1、cin<<variable获取字符、数字、字符串前言:cin的四种标志位IO流有四种条件状态,分别用位来控制。cin.badbit: 001 1 表示系统级错误,一旦被置位,流就无法再使用了cin.eofbit: 010  2 表示流已经读完,到达尾部了cin.failbit:  100  4  可恢复错误,如期...

2018-08-03 14:38:06

char *p = "abcd"; 和 char a[] = "abcd"的区别

从上面一节中“既然搞C++,那就必须和内存管理做斗争”,大家是不是貌似都懂了C++的内存管理?如果这么想,那就来分析一道题吧!俗话说“黑猫白猫能抓老鼠就是好猫”。请问:char*p="abcd";和chara[]="abcd"的区别?指针p存储在什么区?数组a存储在哪儿?它们有什么区别? 答案:指针p和字符数组都是在栈区,其中,"abcd"字面值在常量区,上面的区别是...

2018-08-03 14:25:49

既然搞C++,那就必须和内存管理做斗争

既然学C++,变量存储在哪儿啊?不同类型的变量,存储位置有区别么?哪些内存是需要你管理的啊?什么是堆区、什么是栈区?全局变量存储在哪儿?一个由C/C++编译的程序占用的内存分为以下几个部分1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时...

2018-08-03 12:09:24
奖章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!