自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 递归算法recursion

1 简论当一个函数用它自己来定义时就称为递归的。要素:基准情况:初始值,不用递归就能求解。递归调用:朝着产生基准情形的方向推进。特殊情况:函数内部对输入参数定界。设计法则:假设所有递归调用都能运行。合成效益法则:求解同一问题同一实例,不能做重复性工作。...

2021-09-12 14:48:03 160

原创 DP动态规划

https://www.zhihu.com/question/23995189https://www.zhihu.com/question/39948290//DP 6步骤//1. 确定子问题f(k): 前k个房间中所能取得的最大值//2. dp数组和下标含义:dp[i]: 前i个房间所f(i)//3. 状态转移:dp[n] = max{第n个房间偷,不偷第n个房间}=max{dp[n-2]+Hn,dp[n-1]}//4. 遍历顺序(自顶向下[很少]还是自底向上): 从0->n/

2021-09-12 00:02:42 117

原创 回溯算法解析

1 回溯法定义采用试错的思想,它尝试分步的去解决一个问题。在分步解决问题的过程中,当它通过尝试发现现有的分步答案不能得到有效的正确的解答的时候,它将取消上一步甚至是上几步的计算,再通过其它的可能的分步解答再次尝试寻找问题的答案。注:适用于复杂和规模较大的问题2 算法思想从根节点按照深度优先搜索的方法进行遍历,当搜索到某一结点,判断是否包含问题的解:• 包含:继续搜索• 不包含:逐层回溯父节点。结束条件:直到找到一个可能存在的正确的答案,若没有则宣告该问题没有答案。PS: 深度优先搜索 算法

2021-09-11 23:43:15 470

原创 图的广度优先遍历与深度优先遍历

介绍图的关键的搜索算法之前,先简单介绍下图论中图的概念,矩阵理论中的邻接矩阵和邻接表。1 基本概念1.1 图1.1.1 定义定义:图(graph)是由一些点(vertex)和这些点之间的连线(edge)所组成的;其中,点通常被成为"顶点(vertex)",而点与点之间的连线则被成为"边或弧"(edege)。通常记为,G=(V,E)。1.1.2 种类根据边是否有方向,将图可以划分为:无向图和有向图。1.无向图无向图的所有的边都是不区分方向的。G0=(V1,{E1})。其中,(01) V1={

2021-08-29 18:57:07 3078

原创 经典查找算法

查找是在大量的信息中寻找一个特定的信息元素,在计算机应用中,查找是常用的基本运算,例如编译程序中符号表的查找。本文简单概括性的介绍了常见的七种查找算法,说是七种,其实二分查找、插值查找以及斐波那契查找都可以归为一类——插值查找。插值查找和斐波那契查找是在二分查找的基础上的优化查找算法。树表查找和哈希查找会在后续的博文中进行详细介绍。查找定义:根据给定的某个值,在查找表中确定一个其关键字等于给定值的数据元素(或记录)。查找算法分类:  1)静态查找和动态查找;    注:静态或者动态都是针对查找表而言

2021-08-15 15:23:08 501

转载 简述TCP/IP 协议栈

TCP/IP 协议栈是一系列网络协议的总和,是构成网络通信的核心骨架,它定义了电子设备如何连入因特网,以及数据如何在它们之间进行传输。TCP/IP 协议采用4层结构,分别是应用层、传输层、网络层和链路层,每一层都呼叫它的下一层所提供的协议来完成自己的需求。由于我们大部分时间都工作在应用层,下层的事情不用我们操心;其次网络协议体系本身就很复杂庞大,入门门槛高,因此很难搞清楚TCP/IP的工作原理,通俗一点讲就是,一个主机的数据要经过哪些过程才能发送到对方的主机上。 接下来,我们就来探索一下这个过程。0、物理

2021-08-15 14:58:38 4616

原创 常用经典排序算法

排序算法:本文主要介绍常用的经典排序算法内容:重点排序算法主要分为:1、 冒泡排序2、 快速排序3、 简单插入排序4、 希尔排序学习时间:提示:这里可以添加计划学习的时间例如:1、 周一至周五晚上 7 点—晚上9点2、 周六上午 9 点-上午 11 点3、 周日下午 3 点-下午 6 点学习产出:提示:这里统计学习计划的总量例如:1、 技术笔记 2 遍2、CSDN 技术博客 3 篇3、 学习的 vlog 视频 1 个3、 学习的 vlog 视频 1 个@TOC

2021-08-08 15:43:47 191

翻译 函数指针的使用

1.简单的函数指针的应用形式1:返回类型(*函数名)(参数表)view plain copy char (*pFun)(int); char glFun(int a){ return;} void main() { pFun = glFun; (*pFun)(2); } 第一行定义了一个指针变量pFun。首先我们根据前面提到的“形式1”认识到它是一个指向某种函数的指针,这种函数参数是一个int型,返回值是char类型。只有第一句我们还

2021-08-05 18:43:31 2216

转载 strace跟踪系统调用

strace常用来跟踪进程执行时的系统调用和所接收的信号。 在Linux世界,进程不能直接访问硬件设备,当进程需要访问硬件设备(比如读取磁盘文件,接收网络数据等等)时,必须由用户态模式切换至内核态模式,通过系统调用访问硬件设备。strace可以跟踪到一个进程产生的系统调用,包括参数,返回值,执行消耗的时间。strace命令是一个集诊断、调试、统计与一体的工具,我们可以使用strace对应用的系统调用和信号传递的跟踪结果来对应用进行分析,以达到解决问题或者是了解应用工作过程的目的。当然strace与专业的调

2020-12-07 17:22:03 153

原创 Linux:socket通信原理

linux socket通信引入:网络中进程之间通信操作系统为进程间通信提供的常见方式:UNIX BSD有:管道(pipe)、命名管道(named pipe)软中断信号(signal);UNIX system V有:消息(message)、共享存储区(shared memory)和信号量(semaphore)等.为了唯一标识某个主机进程,可以通过TCP/IP协议族,即网络层的“ip地址”可以唯一标识网络中的主机,而传输层的“协议+端口”可以唯一标识主机中的应用程序(进程)。三元组(ip地址,协议

2020-12-06 23:29:14 2291 3

空空如也

空空如也

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

TA关注的人

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