自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 python 入门基础知识 (章一运算符、变量、函数、模块和注释基础讲解)

python 基础知识一.运算符浮点数:除法运算的结果为小数。>>>1/2>0.5>>>1/1>1.0进行整除运算为双斜杠“//”>>>1//2>0>>&am

2018-07-27 18:53:54 293

原创 leetcode 122. 买卖股票的最佳时机 II

题目:给定一个数组 prices ,其中 prices[i] 是一支给定股票第 i 天的价格。设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。示例 1:输入: prices = [7,1,5,3,6,4]输出: 7解释: 在第 2 天(股票价格 = 1)的时候买入,在第 3 天(股票价格 = 5)的时候卖出, 这笔交易所能获得利润 = 5-1 = 4 。 随后,在第 4 天(

2021-06-18 11:26:31 109

原创 leetcode 763. Partition Labels

题目:字符串 S 由小写字母组成。我们要把这个字符串划分为尽可能多的片段,同一字母最多出现在一个片段中。返回一个表示每个字符串片段的长度的列表。示例1输入:S = "ababcbacadefegdehijhklij"输出:[9,7,8]解释:划分结果为 "ababcbaca", "defegde", "hijhklij"。每个字母最多出现在一个片段中。像 "ababcbacadefegde", "hijhklij" 的划分是错误的,因为划分的片段数较少。解题思路:贪心,只要保证划分区

2021-06-17 11:12:24 108

原创 leetcode 452. Minimum Number of Arrows to Burst Balloons

在二维空间中有许多球形的气球。对于每个气球,提供的输入是水平方向上,气球直径的开始和结束坐标。由于它是水平的,所以纵坐标并不重要,因此只要知道开始和结束的横坐标就足够了。开始坐标总是小于结束坐标。一支弓箭可以沿着 x 轴从不同点完全垂直地射出。在坐标 x 处射出一支箭,若有一个气球的直径的开始和结束坐标为 xstart,xend, 且满足 xstart ≤ x ≤ xend,则该气球会被引爆。可以射出的弓箭的数量没有限制。 弓箭一旦被射出之后,可以无限地前进。我们想找到使得所有气球全部被引爆,所需的弓箭

2021-06-16 10:58:59 113

原创 leetcode 605. Can Place Flowers

题目: 假设你有一个很长的花坛,一部分地块种植了花,另一部分却没有。可是,花卉不能种植在相邻的地块上,它们会争夺水源,两者都会死去。  给定一个花坛(表示为一个数组包含0和1,其中0表示没种植花,1表示种植了花),和一个数 n 。能否在不打破种植规则的情况下种入 n 朵花?能则返回 True,不能则返回 False。 示例 1:输入: flowerbed = [1,0,0,0,1], n = 1输出: True示例 2:输入: flowerbed = [1,0,0,0,1], n = 2

2021-06-15 15:26:49 83

原创 leetcode 435. Non-overlapping Intervals

题目:给定一个区间的集合,找到需要移除区间的最小数量,使剩余区间互不重叠。注意:可以认为区间的终点总是大于它的起点。区间 [1,2] 和 [2,3] 的边界相互“接触”,但没有相互重叠。示例1:输入: [[1,2],[2,3], [3,4], [1,3] ]输出: 1解释: 移除 [1,3] 后,剩下的区间没有重叠。示例2:示例 2:输入: [[1,2],[1,2], [1,2] ]输出: 2解释: 你需要移除两个 [1,2] 来使剩下的区间没有重叠。示例3:输入: [ [1,

2021-06-15 11:07:09 60

原创 leetcode 135. Candy

老师想给孩子们分发糖果,有 N 个孩子站成了一条直线,老师会根据每个孩子的表现,预先给他们评分。你需要按照以下要求,帮助老师给这些孩子分发糖果:每个孩子至少分配到 1 个糖果。评分更高的孩子必须比他两侧的邻位孩子获得更多的糖果。那么这样下来,老师至少需要准备多少颗糖果呢?示例1输入:[1,0,2]输出:5解释:你可以分别给这三个孩子分发 2、1、2 颗糖果。示例2输入:[1,2,2]输出:4解释:你可以分别给这三个孩子分发 1、2、1 颗糖果。 第三个孩子只得到 1

2021-06-10 10:56:34 78

原创 leetcode 455. Assign Cookies

考察的是贪心算法,总体而言是满足局部条件,从而解决整体问题。假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子 i,都有一个胃口值 g[i],这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j,都有一个尺寸 s[j] 。如果 s[j] >= g[i],我们可以将这个饼干 j 分配给孩子 i ,这个孩子会得到满足。你的目标是尽可能满足越多数量的孩子,并输出这个最大数值。示例1.输入: g = [1,2,3], s = [1,1]输出: 1

2021-06-09 23:12:32 64

原创 Linux高并发服务器-第2章 IP协议详解

IP协议定义:IP协议是TCP/IP协议族的核心协议。❑IP头部信息。IP头部信息出现在每个IP数据报中,用于指定IP通信的源端IP地址、目的端IP地址,指导IP分片和重组,以及指定部分通信行为。❑IP数据报的路由和转发。IP数据报的路由和转发发生在除目标机器之外的所有主机和路由器上。它们决定数据报是否应该转发以及如何转发。2.1 IP服务的特点IP协议是TCP/IP协议族的动力,它为上层协议提供无状态、无连接、不可靠的服务。无状态(stateless)是指IP通信双方不同步传输数据的状态信息.

2021-04-13 09:58:10 113

原创 Linux高并发服务器-第1章TCP/IP协议族

第1章 TCP/IP协议族1.1 TCP/IP协议族体系结构以及主要协议TCP/IP协议族是一个四层协议系统,自底而上分别是数据链路层、网络层、传输层和应用层。每一层完成不同的功能,且通过若干协议来实现,上层协议使用下层协议提供的服务。1.1.1 数据链路层定义: 数据链路层实现了网卡接口的网络驱动程序,以处理数据在物理媒介(比如以太网、令牌环等)上的传输。不同的物理网络具有不同的电气特性,网络驱动程序隐藏了这些细节,为上层协议提供一个统一的接口。 数据链路层两个常用的协议是ARP协议(Add

2021-04-11 22:09:45 90

原创 UML框图

框图示例车的类图结构为<>,表示车是一个抽象类;(理解为类中的纯虚函数只能用作继承,而不能实例化)它有两个继承类:小汽车和自行车;它们之间的关系为实现关系,使用带空心箭头的虚线表示;小汽车为与SUV之间也是继承关系,它们之间的关系为泛化关系,使用带空心箭头的实线表示;小汽车与发动机之间是组合关系,使用带实心箭头的实线表示;学生与班级之间是聚合关系,使用带空心箭头的实线表示;学生与身份证之间为关联关系,使用一根实线表示;学生上学需要用到自行车,与自行车是一种依赖关系,使用带箭头的

2021-02-15 17:49:31 714

原创 行为型模式-观察者模式

观察者模式1.模式动机建立一种对象与对象之间的依赖关系,一个对象发生改变时将自动通知其他对象,其他对象将相应做出反应。在此,发生改变的对象称为观察目标,而被通知的对象称为观察者,一个观察目标可以对应多个观察者,而且这些观察者之间没有相互联系,可以根据需要增加和删除观察者,使得系统更易于扩展,这就是观察者模式的模式动机。2.模式定义观察者模式(Observer Pattern):定义对象间的一种一对多依赖关系,使得每当一个对象状态发生改变时,其相关依赖对象皆得到通知并被自动更新。观察者模式又叫做发布-

2021-01-19 22:49:30 192

原创 创建型模式-单例模式

1.模式动机对于系统中的某些类来说,只有一个实例很重要,例如,一个系统中可以存在多个打印任务,但是只能有一个正在工作的任务;一个系统只能有一个窗口管理器或文件系统;一个系统只能有一个计时工具或ID(序号)生成器。如何保证一个类只有一个实例并且这个实例易于被访问呢?定义一个全局变量可以确保对象随时都可以被访问,但不能防止我们实例化多个对象。一个更好的解决办法是让类自身负责保存它的唯一实例。这个类可以保证没有其他实例被创建,并且它可以提供一个访问该实例的方法。这就是单例模式的模式动机。2.模式定义单例

2021-01-19 18:03:32 252

原创 35. Search Insert Position

c给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置解:使用二分法查找,最后返回其位置即可int searchInsert(int* nums, int numsSize, int target){ int left = 0,mid = 0,right = numsSize -1; while(left <= right) { mid = (left + right) / 2;

2020-07-23 00:02:46 64

原创 leetcode 27. Remove Element

c方法同261.int removeElement(int* nums, int numsSize, int val){ int j = 0; if (numsSize == 0) { return 0; } for(int i = 0; i < numsSize; i++) { if(nums[i] != val) { nums[j] = nums[i];

2020-07-21 23:28:19 89

原创 leetcode 26. Remove Duplicates from Sorted Array

C首先考虑错误情况,如长度为0时应return 0。此题分新数组区和待处理区,当前元素和前一个元素相同时,直接处理下一个元素,不同时,将元素赋值到新数组区最后(即j下标所指位置。)双指针,快指针为i,慢指针为j,不相同的数据将会替换前面相同的数据。[1,1,2]替换[1,2]1.int removeDuplicates(int* nums, int numsSize){ int i = 1,j = 1; if(numsSize ==0) return 0;

2020-07-21 23:03:58 109

原创 RTP/RTSP/RTCP区别

RTP/RTSP/RTCP的区别 简单来说的总结:RTSP发起/终结流媒体、RTP传输流媒体数据、RTCP对RTP进行控制,同步。之所以以前对这几个有点分不清,是因为CTC标准中没有对RTCP进行要求,因此在标准RTSP的代码中没有看到相关部分。而私有RTSP的代码中,有关控制、同步等,是在RTP Header中做扩展定义实现的。RFC3550 RTP说明另外,RFC3550可以看作是RFC...

2019-11-07 11:39:52 437

原创 ZeroMQ使用和结构详细分析

**ZeroMQ使用和结构详细分析**1 ZeroMQ 概述    ZeroMQ是一种基于消息队列的多线程网络库,其对套接字类型、连接处理、帧、甚至路由的底层细节进行抽象,提供跨越多种传输协议的套接字。 ZeroMQ是网络通信中新的一层,介于应用层和传输层之间(按照 TCP/IP划分),其是一个可伸缩层,可并行运行,分散在分布式系统间。2系统架构2.1总体架构    ZeroM...

2019-10-30 16:51:14 738

原创 音频编码(PCM、G711A、G711U、AAC)理解

**音频的定义**音频:能被人体感知的声音频率,定义为20-20000HZ。声音是通过物体振动产生的声波。是通过介质(空气或固体、液体)传播并能被人或动物听觉器官所感知的波动现象。介绍:模拟信号是可以听见的声音经过音频线或话筒的传输都是一系列的模拟信号,模拟信号是可以听见的。而数字信号就是用一堆数字记号(二进制1和0)来记录声音,而不是用物理手段来保存信号,实际上我们听不到数字信号。...

2019-10-30 15:00:47 34584 5

原创 看完就懂的《H264编码原理及框图》

H264编码原理及框图————————————分析H264原理:H264是新一代的编码标准,以高压缩高质量和支持多重网络的流媒体著称,在编码上,主要是以下理解:参照一段时间内图像的统计结果表明,在相邻几幅图像画面中,一般差别的像素只有10%以内的点,量度差值不超过2%,而色度差只有1%内的变化。所以对于一段变化不大的图像画面,我们可以先编码出一个完整的图像帧A,随后B就不编码全部图像只写入...

2019-10-29 17:24:54 2391 1

原创 Python(第七章 作用域)

作用域变量的定义是可将其视为指向值的名称。 对于 x = 1,这样的一个赋值语句,我们在执行后,名称 x 引用到值 1。这就像字典一样,键引用值,当然,变量和所对应的值用的是个”不可见”的字典。我们可以使用 vars 函数来返回这个字典:&gt;&gt;&gt; x = 1&gt;&gt;&gt; scope = vars()&gt;&gt;&gt; scope['x']&gt...

2018-09-04 11:22:24 142

原创 Python入门基础(章节 六 参数)

参数1.1 参数的定义 形参定义:在函数定义的时候用到的参数,没有具体值,只是一个占位符称为形参。 实参:在调用函数的时候输入的值。 在def语句中。位于函数名后面的变量通常称为形参,而调用函数时提供的的值称为实参。 以前接触过c/c++的时候&gt;&gt;&gt;int f(int a,int b)//自定义函数中括号里的a,b就是形参,它在函数自定义过程中实际并不占内存....

2018-08-15 17:47:55 136

原创 Python入门基础——(章五 条件、循环及其他语句)

1.条件和条件语句1.1 布尔值 用做表达式(如用if语句中的条件)时,下面的值都将被解释器视为假: False 、 None 、 0 、 ” ” 、 ( ) 、 [ ] 、 { } 标准值False 和None、各种类型(包括浮点数、负数等)的数值0、空序列(如空字符串、空元组和空列表)以及...

2018-08-13 16:01:47 403

原创 Python入门基础(章四 字典)

1. 概念与创建字典映射类型是一种关联式的容器类型,它存储了对象与对象之间的映射关系。简而言之就是通过名称来访问其各个值得数据结构,这种数据结构称为映射。字典的每个键值 key,value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中,字典由键-值对称为项(item) ,格式如下所示:d = {key1 : value1, key2 : value...

2018-08-01 17:28:52 121

原创 Python 入门基础(章 三 字符串使用)

1. 字符串基本操作所有的序列操作,包括索引,切片,最大值,最小值和长度(len)都适用于字符串,但是字符串是不可以变得,所以所有元素赋值和切片赋值都是非法的。&amp;gt;&amp;gt;&amp;gt; number =[1, 2, 3, 4]&amp;gt;&amp;gt;&amp;gt; number[0:2]&amp;gt;&amp;gt;&amp;gt; number&amp;gt; [1,

2018-07-31 17:16:19 592

原创 Python 入门基础知识(章二 列表和元组)

1. Python数据结构对数据进行 增、减、改、查都是建立在数据结构上的, python的数据结构有四种,分别是:列表、字典、元组、集合,这四种代表四种储存数据的方式。2.序列概述Python常用的两种:列表和元组。 其主要区别为列表中的项目应该包括在方括号中,这样python就知道你是在指明一个列表。一旦你创建了一个列表,你就可以添加,删除,或者是搜索列表中的项目。由于你可以...

2018-07-30 19:16:34 366

空空如也

空空如也

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

TA关注的人

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