自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 收藏
  • 关注

原创 g711原理pcm转alaw,pcm转ulaw,alaw转pcm,ulaw转pcm

数字音频处理概念数字音频处理要做的大方向是把我们所听到的声音以数字的方式记录下来,让计算机进行处理。先来简单说说声音这部分:此时此刻你所能听到的动静就是声音,,这个声音是通过我的声带震动产生的,你之所以能听到是因为我的声带震动迫使着空气震动,空气作为声音传播介质之一是能够模仿我的声带震动频率的,空气震动迫使你的耳骨膜和空气产生共振,从而听到声音。怎么记录声音?既然共振可以让而骨膜听到声音...

2019-10-08 11:38:52 10708 10

转载 ffmpeg关于time_base

本来是想写一篇time_base的详细文章,后来发现很多大神写过,那这里我就总结一下各种time_base,方便大家理解。一、time_baseAVStream的time_base的单位是秒。每种格式的time_base的值不一样,根据采样来计算,比如mpeg的pts、dts都是以90kHz来采样的,所以采样间隔就是1/900000秒。AVCodecContext的time_base单位同样...

2019-08-27 15:03:15 2639 2

转载 vim配置——MA6174

vim配置——MA6174set sw=4set ts=4set etset smarttabset smartindentset lbrset fo+=mBset smset selection=inclusiveset wildmenuset mousemodel=popupau FileType php setlocal dict+=~/.vim/dict/php_...

2019-07-19 10:28:29 1574

原创 nano编辑器常用快捷键

如图: ctrl+p (上) ctrl+y/ctrl+gg (顶) ↑ ^ | ctrl+b (左) ← → ctrl+f (右) ctrl+a(行首) <—— ——> ctrl+e (行尾) ...

2019-07-17 13:19:23 11706

转载 重定向> >>与标准输入、标准输出、标准错误输出

当linux执行一个程序的时候,会自动打开三个流,标准输入*(standard input),标准输出(standard output),标准错误输出(standard error)*,比如在打开命令行时,默认情况下,命令行的标准输入连接到键盘,标准输出和标准错误都连接到屏幕,尽管三个流都打开,但他会根据需要使用。重定向>> 可以改变文本流的方向,指定输出目的地。(覆盖)例子:...

2019-07-16 17:51:32 1078

原创 【练习题】三数之和(有序数组)

【练习题】三数之和(有序数组)总体思路:将求三数和的问题变成two_sum(求两数之和)题目:给定一个从小到大排列的有序数组,在数组中选三个下标不同的元素使得他们的和等于给定的target值实现three_sum函数,传入的nums是数组,length是元素个数,target表示三数值和。int* three_sum(int *nums, int length, int targe...

2019-04-03 15:11:32 828

原创 【练习题】求第k小数(有序双数组)

题目:两个升序等长数组num1和num2,找出两个数组中所有元素里的第k小的数,两个数组长度均为n,且n >= k >= 1,写出find_kth_number返回第k小的数组思路一:归并优化O(k)使用归并排序的合并方法:步骤:1、两个指针p1,p2分别指向num1和num2的头2、若num1[p1] <= num2[p2]; p1++;反之,p2++3、whil...

2019-03-27 09:07:26 338

原创 【练习题】杨氏矩阵查找

杨氏矩阵特点:矩阵从左到右和从上到下严格统一有序(统一递增或递减)【思维拓展】:杨氏矩阵相当于二叉排序树,左子树都比根节点小,右子树都比根节点大。以矩阵统一递增为例,二叉排序树转换成矩阵就是左子树在左边,右子树在下面,根节点就是指针当前所指向的数字。题目:写出函数find_target,判断一个数字target是否在一个n * m的二维矩阵中矩阵性质如下:矩阵的每一行都是从左向右升...

2019-03-26 15:29:58 206

原创 【练习题】二分法

传统二分特点:在一个有序、无重复元素的数组中找出某个关键字二分查找步骤:循环的条件是:left &lt;= right1、用三个指针left、mid、right分别指向数组头、中间、尾。left与right之间是待查找区2、在待查找区间中,如果数组中间位置mid指向的值等于目标值,则表示已找到目标值3、 否则:​ ①. 如果数组中间位置mid指向的值小于目标值,则更新待查找区的...

2019-03-15 14:35:00 1056

原创 【练习题】two_sum

题目:给定一组排好序的升序数组numbers,保证数组中没有重复出现的数字,从数组中找到两个数,这两个数相加的和等于target,写出get_tow_sum,返回这两个数的下标(下标从0开始),较小的下标在前,保证存在唯一的解。int* get_two_sum(int *numbers, int length, int target) { int *ans = (int *)malloc(s...

2019-03-15 14:32:40 141

原创 c到c++,类型说明,实现存储任意类型数组代码演示

一、c到c++c++包括:头文件,异常处理,类和对象,STL,模板,Lambda表达式头文件区别:1、c语言头文件有29个,c++除了包含c的29个头文件以外,还另外多出来58个文件;2、c带.h,c++在前面加一个c,例如:cstdio,cmath异常处理:帮助debugSTL起源于惠普实验室,STL的设计思想将算法和数据结构完全分离,分离后中间会有粘合剂——类型萃取来进行弥补。...

2019-03-13 17:02:39 2384

原创 【LeetCode】104. 二叉树的最大深度

题目:给定一个二叉树,找出其最大深度。二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。说明:叶子节点是指没有子节点的节点。示例:给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回它的最大深度 3 。题解:递归思路:1、如果当前节点为空,深度为02、else 当前节点不为空,...

2019-03-05 11:28:04 121

原创 Git的基础使用

Git的基础使用步骤echo &amp;amp;amp;amp;amp;amp;amp;amp;quot;# 仓库名&amp;amp;amp;amp;amp;amp;amp;amp;quot; &amp;amp;amp;amp;amp;amp;amp;amp;amp;gt;&amp;amp;amp;amp;amp;amp;amp;amp;amp;gt; README.md // 链接github仓库git init // 初始化,表示用当前

2019-03-05 09:53:51 190

原创 【LeetCode】100.相同的树

题目:如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。示例 1:输入: 1 1 / \ / \ 2 3 2 3 [1,2,3], [1,2,3]输出: true示例 2:输入: 1 1 / ...

2019-03-04 15:07:27 122

原创 【LeetCode】206.反转链表

206.反转链表题目:反转一个单链表。示例:输入: 1-&amp;amp;gt;2-&amp;amp;gt;3-&amp;amp;gt;4-&amp;amp;gt;5-&amp;amp;gt;NULL输出: 5-&amp;amp;gt;4-&amp;amp;gt;3-&amp;amp;gt;2-&amp;amp;gt;1-&amp;amp;gt;NULL进阶:你可以迭代或递归地反转链表。你能否用两种方法解决这道题

2019-03-03 16:57:14 119

原创 【基础知识】二叉树、广义表、哈弗曼编码

二叉树完全二叉树: 不需要存地址. ( 算法优化常用完全二叉树: 记录式改为计算式 . 计算式耗时, 但省空间)左子树: 2 * i右子树: 2 * i + 1满二叉树: 没有度为1的结点. 要么是0, 要么是2.二叉树性质:1. 第i层最多有2^(i - 1)个结点2. 深度为k的二叉树最多有2^k - 1个结点3. 度为0(叶子结点)的结点比度为2的结点多14....

2019-03-02 10:55:26 440

原创 【基础知识】栈

特点:后进先出类似于一个桶.结构定义:栈顶初始化为-1int *data//数据区int max_size, top_index//栈顶指针下标入栈:栈顶指针向上移动一位出栈:栈顶指针向下移动一位表达式求值两个栈, 一个装数, 一个装符号.用isdigit()函数分辨他是否为数字0-9 返回值: 是-&gt;1 否-&gt;0 头文件&lt;ctype.h&gt...

2019-03-02 10:53:25 263

原创 【基础知识】队列

特点:先进先出需要两个指针, 分别指向头和尾 ( head &amp; tail )结构定义:队首标记为0, 队尾标记为-1给队列分配内存空间 (初始化类似于顺序表)int *data//数据区int head, tail, length入队:插在尾部出队:head指向head-&gt;next队列遍历:只需要将队首标记上到队尾标记上的所有元素依次输出就好.输出队...

2019-03-02 10:51:55 328

原创 【基础知识】链表

链表分为程序内部和内存内部程序内部 ________________________________ head |内存内部 1 add 2 add 5 add |l-&gt;口-&gt; | 口口-&gt; 口口-&gt; 口口 | ————————————————————————————————— head存链表地址(也就是1的a...

2019-03-02 10:49:32 109

原创 【基础知识】顺序表

顺序表可以理解为一种特殊的数组顺序表有一片连续的存储区, 他可以存储任意类型的结构结构定义: 1. size : 顺序表的大小(容量, 也可以说一共有几个格子) 2. length : 标记顺序表现在共有的元素个数 3. data_type : 确定顺序表中每个位置(格子)存储的元素类型顺序表 - 插入:想让数值7插放在数值为3的位置. 7 | v1 2 ...

2019-03-02 10:47:42 404

原创 【基础知识】数据结构导论

程序 = 算法 + 数据结构数据结构 = 结构定义(结构体) + 结构操作数据结构本质: 做数据的表示从本质上来说, 存储整型的整数类型int就是一类数据结构, 指针类型也是一类数据结构. int可以做四则运算, 指针不行.所以int就相当于结构定义, 而所做的四则运算是结构操作.算法与数据结构:更像是太极阴阳两级算法. 如果算法脱离了数据结构就不能工作了,算法是解决问题的方法, 结构操...

2019-03-02 10:44:51 157

原创 【LeetCode】19.删除链表的倒数第N个节点

题目:给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。示例:给定一个链表: 1-&amp;amp;gt;2-&amp;amp;gt;3-&amp;amp;gt;4-&amp;amp;gt;5, 和 n = 2.当删除了倒数第二个节点后,链表变为 1-&amp;amp;gt;2-&amp;amp;gt;3-&amp;amp;gt;5.说明:给定的 n 保证是有效的。进阶:你能尝试使用一趟扫描实现吗?题解:**普通思

2019-02-27 19:30:50 121

原创 TCP的相关题目

TCP的三次握手与四次挥手三次握手第一条: 客户端发送的连接请求报文段, 该报文段特点: 无应用层数据.​ SYN=1: SYN = 1时, 代表他是一个连接请求或者连接请求接受​ seq=x(随机): seq是报文段第一个字节的序号, 序号为占了32位, (也就是占了4个字节), 序号位是由主机内部随机产生的, 可以从任意随机数开始.​ 对于确认号ack在这里是没有意义的, 因为在这...

2019-02-26 20:13:36 1322

原创 递归实现双数组字典树AC⾃动机

递归实现双数组字典树AC⾃动机普通AC⾃动机的递归实现过程void build_ac(Node *node) {/* 根节点的⽗亲 == NULL */ if (node == NULL) return ;//递归出⼝:当node为空,返回./* 因为该递归思想是深度优先搜索进⾏ac⾃动机的创建,且ac⾃动机的失败指针在建⽴的过程中必须得先将⽗亲节点的失败指针确定好后才可建⽴孩⼦节点...

2019-02-22 15:04:38 199

原创 TCP的三次握手与四次挥手

TCP的三次握手与四次挥手三次握手第一条: 客户端发送的连接请求报文段, 该报文段特点: 无应用层数据.​ SYN=1: SYN = 1时, 代表他是一个连接请求或者连接请求接受​ seq=x(随机): seq是报文段第一个字节的序号, 序号为占了32位, (也就是占了4个字节), 序号位是由主机内部随机产生的, 可以从任意随机数开始.​ 对于确认号ack在这里是没有意义的, 因为在这...

2019-02-20 14:38:59 136

原创 我的Ubuntu重装系统后

ssh-copy-id命令实现ssh免密登陆ssh-copy-id -i ~/.ssh/id_rsa.pub user@ip

2018-11-24 18:33:11 217

转载 进程与线程

进程:简单说来,进程就是一段程序的执行过程.每一个进程有自己独立的地址空间, 每启动一个进程, 系统就会为它分配地址空间,建立数据表来维护代码段、堆栈段和数据段, 此操作十分昂贵.进程的三个状态:就绪: 获取除了cpu外的所有资源, 只要处理器分配资源就立刻执行.运行: 获得处理器分配的资源, 程序开始执行阻塞: 等待条件满足才执行. 如: 等待i/o操作时, 此时状态就叫阻塞...

2018-10-24 09:55:21 191

原创 #关于宏定义

关于宏定义宏定义中#和##的使用.#的功能是将#后面的参数进行字符串化操作#include &lt;stdio.h&gt;#define P(func1, func2) { \ printf("%s = %d\n", #func1, func2); \}int main() { P(haha, 4); return 0;}/*运行结果:haha = 4...

2018-10-24 09:47:52 101

转载 Ubuntu查看系统的信息

转载自:http://blog.chinaunix.net/uid-25885064-id-3440641.html系统信息 uname -a # 查看内核/操作系统/CPU信息 cat /etc/issue # 查看操作系统版本 cat /proc/version #包含GCC的版本信息 cat /proc/cpuinf ...

2018-08-25 11:46:33 2780

翻译 ps1修改ubuntu终端(terminal)字体颜色

ps1修改ubuntu终端(terminal)字体颜色第一步:打开.bachrcvim .bashrc在非插入模式下找到ps1:/ps1 + 回车第二步:将原始的ps1用#注释掉,将以下代码复制进.bashrc里,保存退出最后执行:. .bashrc让bashrc生效即可这是我目前使用的命令行颜色:PS1=&amp;quot;\[\033[1;32;1m\][\[\033[1;3...

2018-08-23 19:51:30 2647

原创 github基础操作(公钥)与报错指南

git报错指南一、github上传后远端不显示绿点原因:github的邮箱和本地git初始化配置邮箱不一致!!!解决方法: 1、查看本地git邮箱:查看初始化的本地邮箱是否与github邮箱一致git config user.email2、更改git本地邮箱:git config --global user.email &amp;amp;amp;amp;amp;quot;新改邮箱&amp;amp;amp;amp;amp;quot;完成!!!!所以

2018-08-21 00:02:58 288

原创 linux定期清理数据——crontab

linux定期清理数据——crontab定期清理实际上是定期执行一次.sh脚本。这需要用到crontab命令在crontab -e里写上以下命令:* * 1 * * bash [路径:要定期执行的.sh文件所在路径] #用bash来定期执行.sh文件。。这句命令表示每隔一天执行一次脚本例如:crontab命令crontab命令被用来提交和管理用户的需要周期性执行...

2018-08-18 22:17:36 1228

原创 shell递归识别目录与普通文件,并记录文件中最长字符串

shell递归识别目录与普通文件,并记录文件中最长字符串实现查找最长字符串的整体思路比较简单,是目录就cd,是文件就遍历文件内容,将内容变成字符串,比较字符串大小,将拥有最长字符串的文件名,文件目录,最长字符串长度和内容,记录下来。!!!难点在于处理字符串递归识别目录与普通文件#! /bin/bashread filenamefunction cycle() { ...

2018-08-13 23:29:32 332

空空如也

空空如也

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

TA关注的人

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