自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 My_memset函数

Memset函数介绍函数的模拟实现函数的相关问题函数介绍函数的模拟实现函数的相关问题

2020-07-30 22:43:12 739

原创 Leetcode--不同的二叉搜索树

不同的二叉搜索树题目描述:二级目录三级目录题目描述:二级目录三级目录

2020-07-22 18:13:54 304

原创 Leetcode--最长回文子串

最长回文子串题目描述:二级目录三级目录题目描述:给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。最长回文子串:正反遍历结果相同的子串。示例 1:输入: “babad”输出: “bab”注意: “aba” 也是一个有效答案。示例 2:输入: “cbbd”输出: “bb”二级目录三级目录...

2020-07-22 17:58:39 166

原创 实现my_strcpy函数

实现一个my_strcpy函数题目描述:代码1:分析1:完整的正确代码:分析2:题目描述:写出完整版的strcpy函数代码1:char * my_strcpy(char *str1,const char *str2) //[1]{ assert(str1 != NULL && str2 != NULL); //[2] char *ret = str1; //[3] while (*str2!='\0')//[4] { *st

2020-07-20 15:00:25 1553

原创 设计一个页面缓存机制

页面缓存机制题目描述:解答:页面缓存机制:描述三种页面置换算法:实现一个LRU缓存机制:分析:代码:题目描述:请描述页面置换算法?1.最佳置换算法(OPT)2.先进先出置换算法(FIFO)3.最少使用(LRU)置换算法4 运用你所掌握的数据结构,设计和实现一个 LRU (最近最少使用) 缓存机制。它应该支持以下操作: 获取数据 get 和 写入数据 put 。获取数据 get(key); 如果关键字 (key) 存在于缓存中,则获取关键字的值(总是正数),否则返回 -1。写入数据 pu

2020-07-17 19:45:33 279

原创 Leetcode--地下城游戏

地下城游戏题目描述:分析1:代码1:分析2:代码2:注意事项:题目描述:一些恶魔抓住了公主(P)并将她关在了地下城的右下角。地下城是由 M x N 个房间组成的二维网格。我们英勇的骑士(K)最初被安置在左上角的房间里,他必须穿过地下城并通过对抗恶魔来拯救公主。骑士的初始健康点数为一个正整数。如果他的健康点数在某一时刻降至 0 或以下,他会立即死亡。有些房间由恶魔守卫,因此骑士在进入这些房间时会失去健康点数(若房间里的值为负整数,则表示骑士将损失健康点数);其他房间要么是空的(房间里的值为 0),要么

2020-07-12 23:17:32 342

原创 Leetcode--最佳股票买卖时机

题目描述:

2020-07-10 22:26:23 804

原创 Leetcode--恢复空格

题目描述:哦,不!你不小心把一个长篇文章中的空格、标点都删掉了,并且大写也弄成了小写。像句子"I reset the computer. It still didn’t boot!“已经变成了"iresetthecomputeritstilldidntboot”。在处理标点符号和大小写之前,你得先把它断成词语。当然了,你有一本厚厚的词典dictionary,不过,有些词没在词典里。假设文章用sentence表示,设计一个算法,把文章断开,要求未识别的字符最少,返回未识别的字符数。示例:输入:dict

2020-07-09 21:33:34 326

原创 Leetcode--无重复字符的最长子串

题目描述:给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。示例 1:输入: “abcabcbb”输出: 3解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。示例 2:输入: “bbbbb”输出: 1解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。示例 3:输入: “pwwkew”输出: 3解释: 因为无重复字符的最长子串是 “wke”,所以其长度为 3。请注意,你的答案必须是 子串 的长度,“pwke” 是一个子序列,不是子串。不成

2020-07-08 22:55:04 346

原创 Leetcode--不同路径

题目描述:一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start”)。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。现在考虑网格中有障碍物。那么从左上角到右下角将会有多少条不同的路径?网格中的障碍物和空位置分别用 1 和 0 来表示。说明:m 和 n 的值均不超过 100。示例 :输入:[[0,0,0],[0,1,0],[0,0,0]]输出: 2解释:3x3 网格的正中间有一个障碍物。从左上角到右下

2020-07-06 15:33:59 320

原创 Bitmap--海量数据排序

题目描述:给10g的整型数据进行从小到大的排序。分析:经常能够看到有些大厂的面试题里有一些这样的题目:一个10G的文件,里面全部是自然数,一行一个,乱序排列,对其排序。在32位机器上面完成,内存限制为 2G。首先来分析一下题目,10G的文件,只有2G内存,显然,不可能一次性把数据放入内存中直接排序。那么,还有什么其他办法呢?遍寻资料,可以发现大致有两种解决方案:1、把大文件分成多个小文件,分别排序,到最后合并成一个文件。2、另外一种方法就是著名的bitmap算法了。Bitmap算法思想:所谓

2020-07-06 15:30:10 720

原创 将点分十进制转换为ip地址表示

问题描述:实现函数将点分十进制表示的字符串转换为 unsigned int 整型数值unsigned int my_ResDotDec(const char *strip);参数说明:strip 点分十进制表示的字符串;示例: strip =“128.11.3.31” ; 返回值: 2148205343;分析:灵活运用联合体的特点,ip地址为unsigned int类型,点分十进制的字符相当于4个用’.'分开的unsigned char类型,所以我们可以设计一个联合体IPNode来保存stri

2020-07-06 01:02:27 1827

原创 Leetcode--两个字符串的通配符匹配

题目描述:给定一个字符串 (s) 和一个字符模式 § ,实现一个支持 ‘?’ 和 ‘’ 的通配符匹配。‘?’ 可以匹配任何单个字符。'’ 可以匹配任意字符串(包括空字符串)。说明:s 可能为空,且只包含从 a-z 的小写字母。p 可能为空,且只包含从 a-z 的小写字母,以及字符 ? 和 *。...

2020-07-06 00:22:44 901

原创 将ip地址转换为点分十进制表示

题目描述:实现函数将 unsigned int 整型数值转为点分十进制记法表示:点分十进制(Dotted Decimal Notation)全称为点分(点式)十进制表示法,是IPv4的IP地址标识方法。IPv4中用四个字节表示一个IP地址,每个字节按照十进制表示为0~255。点分十进制就是用4个从0~255的数字,来表示一个IP地址。char * my_DotDec(unsigned int ip,char *buffer);参数说明:value:欲转换的数数值。buffer:目标字符串的

2020-07-04 20:29:36 7719

原创 My_atoi--字符串转换为数值,并伴有进制转换!

实现一个My_atoi函数:实现一个int My_atoi(const char* buff),将buff中的数值字符串转换为数值,并且该函数支持十六进制与八进制例如:char *buff = " 0xff.14",返回255,char *buff = " afda0123"返回83.分析:这个题字面意思看起来很简单,就是将字符串中的数值字符串转换为数值并将其返回,但是这个题中有许多的细节都容易被忽略掉:1.在开始转换之前遇到非所需转换字符时跳过该字符,在开始转换时遇到非所需转换字符就停止转换

2020-07-04 17:31:21 345

原创 Leetcode--用两个栈实现一个队列

题目描述:用两个栈来实现一个队列,此队列需要完成appendTail尾插与deleteHead头删,并返回所删除的元素,若队列中没有元素可删除,返回-1分析:实现一个队列说白了就是让我们实现元素的先进先出功能,怎么让先进去的数实现先出功能就是这个问题的关键所在。两个栈s1,s2,s1用来作为插入,s2用来作为删除,插入时很简单,直接向s1中push()元素,删除时,我们直接在s2中top()、pop(),如果s2中没有元素存在,我们就把s1中的所有元素push到s2中,如果s1中也没有元素就说明没有

2020-07-02 22:32:59 1469

原创 Leetcode--最长重复子数组

题目描述:给两个整数数组 A 和 B ,返回两个数组中公共的、长度最长的子数组的长度。示例:输入:A: [1,2,3,2,1]B: [3,2,1,4,7]输出:3解释:长度最长的公共子数组是 [3, 2, 1] 。不成文的小规则:牢记子序列默认不连续,子数组默认是连续的!!!解法1动态规划:分析:当我们遇到最值问题,无脑动态规划就完了,而动态规划最重要的一点就是要想好遍历方向和dp保存的信息是什么即可运用动态规划的DP二维数组dp[i][j]表示以A[i-1]与B[j-1]结尾的公

2020-07-02 22:15:02 649

空空如也

空空如也

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

TA关注的人

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