自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 输入一个整数n,求从1到n这n个整数的十进制表示中1出现的次数

1. 题目描述输入一个整数n,求从1到n这n个整数的十进制表示中1出现的次数。例如输入12,从1到12这些整数中包含1的数字有1,10,11和12,1一共出现了5次。2. 题目来源第一次看到是在《剑指Offer》第2版上,面试题32。leetcode和牛客网上都有这道题。3. 解题思路考虑将n的十进制的每一位单独拿出讨论,每一位的值记为weight。1) 个位从1到n,每增加1,weight就会加1,当weight加到9时,再加1又会回到0重新开始。那么weight从0-9的这种周期会出现多少

2021-08-03 22:53:06 1727

原创 算法题解——矩阵的最小路径和

题目描述给定一个 n * m 的矩阵 a,从左上角开始每次只能向右或者向下走,最后到达右下角的位置,路径上所有的数字累加起来就是路径和,输出所有的路径中最小的路径和。解法一 暴力解法(会超时)比较所有可以走的路径,选择和最小的路径。采用递归的方法,限制条件:在矩阵的右边界只能向下走在矩阵的下边界只能向右走在其他地方取向右或者向下最小的路径走class Solution {public: //暴力递归 超时!! int minPathSum(vector<vecto

2021-07-22 22:36:10 900

原创 算法题解——请根据二叉树的前序遍历,中序遍历恢复二叉树,并打印出二叉树的右视图

请根据二叉树的前序遍历,中序遍历恢复二叉树,并打印出二叉树的右视图题目描述如下:请根据二叉树的前序遍历,中序遍历恢复二叉树,并打印出二叉树的右视图输入:[1,2,4,5,3],[4,2,5,1,3]返回值:[1,3,5]本题目可以分为两个部分重构二叉树打印二叉树的右视图1、重构二叉树思路对于先序遍历而言,[1,2,4,5,3],列表中的1必定是二叉树的根节点,而中序遍历是左子树、根节点、右子树的顺序,故在[4,2,5,1,3]中根节点1的左边[4,2,5]就是左子树,而【3】就是右子树

2021-07-14 10:14:41 532

原创 atoi()函数实现

atoi()函数实现atoi()函数说将字符串转换为int数字在进行函数实现时要考虑以下几种异常情况:字符串为空字符串前面有空格要忽略判断正负号由于atoi()返回值为int类型,要注意上下界溢出判断异常字符跳出以下为代码实现int my_atoi(const char* str){ long long ret = 0; //字符串为空 if (str == NULL || *str == '\0') { return 0; } int flag = 1; //去掉

2021-07-12 22:29:13 252

原创 memcpy函数和strcpy函数实现

memcpy函数实现对于memcpy函数实现经常出现在面试题目中C语言标准库中定义如下void* __cdecl memcpy( _Out_writes_bytes_all_(_Size) void* _Dst, _In_reads_bytes_(_Size) void const* _Src, _In_ size_t _Size );具体原理就是按字节将Src中的内容拷贝到Dst中。这里要注意

2021-07-11 21:13:28 161

原创 牛客题解——容器盛水问题

容器盛水问题输入:[4,5,1,3,2]输出:5解题思路:定义双指针保存桶的左右边界决定能装多少水的是最小边双指针从两边往中间更新,遇到比最小边小的就更新容积否则更新边界。class Solution {public: /** * max water * @param arr int整型vector the array * @return long长整型 */ long long maxWater(vector<int&

2021-07-04 16:04:13 205

原创 算法题解——将字符串转化为ip地址

算法题解——将字符串转化为ip地址题目描述现在有一个只包含数字的字符串,将该字符串转化成IP地址的形式,返回所有可能的情况。例如:给出的字符串为"25525511135",返回[“255.255.11.135”, “255.255.111.35”]. (顺序没有关系)ip地址限制条件:ip地址一共包含4段,每段用 '.'分隔每段如果有两位及以上,则首位不能为0,如01,02每段不能大于255解题思路使用深度优先搜索DFS,附加以上限制条件,并且要确保字符串都被搜索到。代码如下:

2021-07-04 13:30:54 1586

原创 最长递增子序列

最长递增子序列这题好难呀,写写思路,以便后面复习。第一步:计算最长递增子序列长度首先建立两个数组res:存放递增子序列,这个数组不是最终结果,其数组大小是最长递增子序列长度。maxlen:存放以元素i结尾,形成最大递增子序列的长度遍历数组: 如果arr[i]比res最后一个元素大: 元素插入res; maxlen插入res.size + 1 否则: 在res中找到第一个大于或等于arr[i]的元素,用arr[i]替换; maxlen插入以arr[i]结尾,形成最大递增子序列的

2021-06-30 15:14:07 73

原创 求二叉树的层序遍历

*求二叉树的层序遍历解题思路首先采用前序遍历二叉树,遍历过程中使用depth变量记录当前层数,同一层数保存到一个数组中/** * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode *right; * }; */class Solution {public: int i; vector<vector<int> > levelOrder(Tre.

2021-06-04 17:49:57 93

原创 实现二叉树先序,中序和后序遍历(C++)

实现二叉树先序,中序和后序遍历(C++)解题思路采用递归遍历二叉树遍历:先序遍历:访问根节点,遍历左子树,遍历右子树中序遍历:遍历左子树,访问根节点,遍历右子树后续遍历:遍历左子树,遍历右子树,访问根节点递归思路:先序遍历(根节点) if 结点为空:return; 访问(根节点); 先序遍历(根节点->左节点); 先序遍历(根节点->右节点); 中序遍历(根节点) if 结点为空:return; 中序遍历(根节点->左节点); 访问(根节点); 中序

2021-06-02 11:28:44 478

原创 快速排序和冒泡排序(c语言)

快速排序和冒泡排序(c语言)/** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * 将给定数组排序 * @param arr int整型一维数组 待排序的数组 * @param arrLen int arr数组长度 * @return int整型一维数组 * @return int* returnSize 返回数组行数 *///快速排序void fast_sort(int *arr,int left,int right){ int i = l

2021-05-30 18:32:18 207

原创 反转链表(C语言)

反转链表(C语言)题目描述输入一个链表,反转链表后,输出新链表的表头。/** * struct ListNode { * int val; * struct ListNode *next; * }; *//** * * @param pHead ListNode类 * @return ListNode类 */struct ListNode* ReverseList(struct ListNode* pHead ) { // write code here

2021-05-30 18:28:11 128

原创 算法题设计LRU缓存结构(c语言)

c语言实现LRU缓存结构LRU缓存结构LRU是Least Recently Used的缩写,即最近最少使用,是一种常用的页面置换算法,选择最近最久未使用的页面予以淘汰。题目描述设计LRU缓存结构,该结构在构造时确定大小,假设大小为K,并有如下两个功能set(key, value):将记录(key, value)插入该结构get(key):返回key对应的value值[要求]set和get方法的时间复杂度为O(1)某个key的set或get操作一旦发生,认为这个key的记录成了最常使用的。

2021-05-30 18:21:27 526

原创 用Tensorflow2搭建经典的卷积神经网络(LeNet,AlexNet,VGG16,ResNet50)

最近看了卷积神经网络的一些经典论文,用Tensorflow2进行了复现,其中包括LeNet,AlexNet,VGG16,ResNet50,并且在数据集上进行了测试,能够正常训练,结果表明搭建的没有问题。下面进入正题:import tensorflow as tffrom tensorflow import kerasfrom tensorflow.keras import layersimport numpy as npimport matplotlib.pyplot as plt%matpl

2020-06-18 16:38:51 1297

原创 机器学习小白还在为没有实战发愁?手把手教你结构化处理数据进行建模预测!

结构化数据处理案例:泰坦尼克号幸存者预测数据分析建模预测案例介绍:当年泰坦尼克号的沉没造成了很多人的死亡,救生艇不足是造成如此多人死亡的主要原因。尽管能否活下来要看运气,但是有些群体的存活概率比其他人更高。现在给出一些乘客的信息,包括他最后是否生还。根据这些信息,我们要对其他乘客是否生还进行预测。数据集包含两个文件:train.csv和test.csv#解压数据集!unzip data/data31483/titanic.zip -d work/Archive: data/data31

2020-06-11 14:45:25 800

原创 经典论文解读——AlexNet(附tensorflow2实现)

经典论文解读:AlexNetAlexNet是ImageNet LSVRC-2012夺冠模型,可以说是深度卷积神经网络的开篇。AlexNet出自:ImageNet Classification with Deep Convolutional Neural Networks论文总结:1、该论文提出了AlexNet模型,对计算机视觉产生了非常大的影响。2、提出RELU非线性激活函数,在imageNet数据集上比tanh,sigmiod等激活函数收敛快3、由于当时GPU算力不够,在两个GPU上进行训练。

2020-06-02 11:07:01 527

原创 用numpy搭建两层神经网络进行图片分类

用numpy搭建两层神经网络进行图片分类本实验所使用的数据集为吴恩达老师深度学习课后作业的【识别猫】数据集,训练集209张64x64图片,测试集50张64x64图片。手推前向后向计算公式,并用代码实现,加深对神经网络的理解。数据预处理:def dataprogress(): """数据预处理""" trainSet_x,trainSet_y,testSet_x,testSet_y,classes = load_dataset() trainX_trans = trainSet_

2020-05-27 19:12:00 1264 2

原创 用numpy实现单层神经网络进行图片分类

用numpy实现单层神经网络进行图片分类实验所用的数据集为6464的图片,我们要做的是搭建一层神经网络识别图片中有没有猫单层神经网络结构如下:图片大小为(64,64,3)需要将其转成(1,6464*3)故W的大小为(1,12288)在此网络中前向计算:Z=WX+b Z = WX + b Z=WX+byhat=sigmoid(Z)yhat = sigmoid(Z)yhat=sigmoid(Z)代码实现:def sigmoid(x): return 1 / (1 + np.exp(-

2020-05-25 17:51:39 729

原创 kaggle入门赛TOP%7:泰坦尼克号(2.建模预测)基于百度aistudio平台

数据分析,特征处理在上一篇帖子:https://blog.csdn.net/QianLong_/article/details/105767981话不多说,先上结果:目前排名2200/19000决策树的效果最好让我很意外,仔细调参的话应该能提升带0.8分# 查看当前挂载的数据集目录, 该目录下的变更重启环境后会自动还原# View dataset directory. This di...

2020-04-26 23:34:58 808

原创 kaggle入门赛TOP%7:泰坦尼克号(1.数据分析,特征处理)基于百度aistudio平台

# 查看当前挂载的数据集目录, 该目录下的变更重启环境后会自动还原# View dataset directory. This directory will be recovered automatically after resetting environment. !ls /home/aistudio/datadata31483# 查看工作区文件, 该目录下的变更将会持久保存. 请...

2020-04-26 14:21:12 907

原创 青春有你2小姐姐百度图片爬取(基于aistudio平台)

# 查看当前挂载的数据集目录, 该目录下的变更重启环境后会自动还原# View dataset directory. This directory will be recovered automatically after resetting environment. !ls /home/aistudio/data# 查看工作区文件, 该目录下的变更将会持久保存. 请及时清理不必要的文件,...

2020-04-26 13:59:24 806

原创 机器学习实战——树回归(代码错误汇总)

机器学习实战——树回归(代码错误汇总)在学习机器学习实战这本书过程中,代码实现部分往往有一些小的错误。下面进行一些总结,方便交流学习!1.TypeError: unsupported operand type(s) for /: ‘map’ and ‘int’报错原因:map方法和int不兼容。解决办法:在map方法外加上一个list()如下fltLine = list(map(floa...

2020-03-23 16:04:19 988

原创 机器学习实战——Logistic 回归(代码实现及错误总结)

机器学习实战——Logistic 回归先写写学医过程中遇到的问题:首先在随机梯度上升算法运行过程中代码:weights = weights + alpha * error * dataMatrix[i]出现问题TypeError: can’t multiply sequence by non-int of type 'numpy.float64’无法将序列乘以’numpy.float64’...

2020-02-04 17:43:08 643

原创 机器学习实战——朴素贝叶斯法(代码详解)

机器学习实战——朴素贝叶斯法朴素贝叶斯就是在假设各个特征相互独立的条件下运用贝叶斯准则通过先验概率计算出后验概率,输出后验概率最大的类别。先讲讲在下代码时候遇到的问题,代码参考机器学习实战这本书。问题一:《机器学习实战》P66中运行程序清单4-5时,总是报错:UnicodeDecodeError: ‘gbk’ codec can’t decode byte 0xae in positio...

2020-02-01 17:35:50 836

原创 机器学习实战——感知机学习算法(附代码实现)

机器学习实战——感知机学习算法(附代码实现)感知机学习,是神经网络和支持向量机的基础,原理较为简单,这里不再叙述,原理可以参考李航的《统计学习方法》。最近刚刚学习完感知机学习算法的原理,但没有找到代码实现,由于原理较为简单,就想着自己用代码来实现书中的例子,正好锻炼一下编程能力,下面附代码:import numpy as npdef perceptron(x,y,r): """感...

2020-01-08 14:03:23 1067

原创 机器学习实战——k近邻算法学习笔记

机器学习实战——k近邻算法k-NN算法,寻找与每个测试实例最接近即距离最小的k个训练实例,通过对这k个训练实例多数表决等方法来判断测试实例的类别。通过构造kd树,搜索kd树的方法可以大大减少算法的计算量,但是在机器学习实战这本树中并未讲解构造kd树的算法,kd树还有待学习!——————————————————————————————机器学习实战书中的k-NN代码运用了大量的NumPy库函数...

2020-01-03 23:14:17 222

原创 机器学习实战——决策树算法代码详解

机器学习实战——决策树算法代码详解刚开始学习机器学习,在熟悉python语法之后,看了李航的统计学习方法决策树的原理,自己推导了一遍,想用代码实现,但是无从下手。跟着机器学习实战的代码写了一遍,这本书的代码注释不多,不易理解,这里添加了理解后的详细注释。一起学习!ID3算法,根据最大信息增益原理选择最优特征。下面附代码:from math import logimport operat...

2020-01-01 22:50:19 879

空空如也

空空如也

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

TA关注的人

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