自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 数据分析打卡5

模型建立 所用库:sklearn 处理完前面的数据我们就得到建模数据,下一步是选择合适模型 在进行模型选择之前我们需要先知道数据集最终是进行监督学习还是无监督学习 模型的选择一方面是通过我们的任务来决定的。 除了根据我们任务来选择模型外,还可以根据数据样本量以及特征的稀疏性来决定 刚开始我们总是先尝试使用一个基本的模型来作为其baseline,进而再训练其他模型做对比,最终选择泛化能力或性能比较好的模型 模型评估 交叉验证(cross-validation)是一种评估泛化性能的统计学方法,它比单次划分训练

2020-08-27 15:03:17 180

原创 数据分析打卡4

数据可视化 绘图工具 matplotlib包,seaborn包

2020-08-24 18:02:51 112

原创 数据分析打卡3

数据重构 数据合并 concat() 可横向合并也可纵向合并,具体参数设置 join(),merge() 横向合并 append() 变为Series类型 stack() 数据聚合 groupby() agg()

2020-08-22 17:25:51 103

原创 数据分析打卡2

数据清洗 数据缺失和处理 查看缺失:info(),isnull().sum() 处理:df[‘Age’]=df[‘Age’].fillna(0) 重复值处理 查看重复:duplicated() 去除重复项:drop_duplicates() 特征处理 分为数值型和文本型特征 处理:数值型特征进行离散化,文本型则转为数值型处理 离散化:cut(),qcut() 查看文本变量名及种类:value_counts(),unique(),nunique() 文本转数值:replace(),map(),使用

2020-08-20 21:46:10 86

原创 数据分析打卡1

数据分析大概就是利用一些工具对一些数据的进行提取然后再分析。 工具:python,numpy库,pandas库 载入数据 pandas.read_csv() 查看数据 head(),info(),tail(),columns 导出 to_csv() 数据类型 DataFrame(表格,本章数据类型),Series(索引-值) 删除数据 del/drop 筛选 midage=df[(df[‘年龄’]>=10)&(df[‘年龄’]<50)] midage.head() midage.l

2020-08-18 14:45:08 108

原创 课程表2

题目描述 现在你总共有 n 门课需要选,记为 0 到 n-1。 在选修某些课程之前需要一些先修课程。 例如,想要学习课程 0 ,你需要先完成课程 1 ,我们用一个匹配来表示他们: [0,1] 给定课程总量以及它们的先决条件,返回你为了学完所有课程所安排的学习顺序。 可能会有多个正确的顺序,你只要返回一种就可以了。如果不可能完成所有课程,返回一个空数组。 示例 输入: 4, [[1,0],[2,0],[3,1],[3,2]] 输出: [0,1,2,3] or [0,2,1,3] 解释: 总共有 4 门课.

2020-05-17 12:54:23 92

原创 课程表

题目描述 你这个学期必须选修 numCourse 门课程,记为 0 到 numCourse-1 。 在选修某些课程之前需要一些先修课程。 例如,想要学习课程 0 ,你需要先完成课程 1 ,我们用一个匹配来表示他们:[0,1] 给定课程总量以及它们的先决条件,请你判断是否可能完成所有课程的学习? 示例 输入: 2, [[1,0]] 输出: true 解释: 总共有 2 门课程。学习课程 1 之前,你需要完成课程 0。所以这是可能的。 利用拓扑排序 c++代码 class Solution { pu.

2020-05-17 12:50:01 176

原创 二叉树的最近公共祖先

题目描述 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。” 示例 输入: root = [3,5,1,6,2,0,8,null,null,7,4], p = 5, q = 1 输出: 3 解释: ...

2020-05-03 23:08:00 89

原创 格雷编码

题目描述 格雷编码是一个二进制数字系统,在该系统中,两个连续的数值仅有一个位数的差异。 给定一个代表编码总位数的非负整数 n,打印其格雷编码序列。格雷编码序列必须以 0 开头 示例 输入: 2 输出: [0,1,3,2] 解释: 00 - 0 01 - 1 11 - 3 10 - 2 递归即可 c++代码 vector<int> grayCode(int n) { ...

2020-04-14 14:03:12 101

原创 子集

题目描述 给定一组不含重复元素的整数数组 nums,返回该数组所有可能的子集(幂集)。 说明:解集不能包含重复的子集。 示例 输入: nums = [1,2,3] 输出: [ [3], [1], [2], [1,2,3], [1,3], [2,3], [1,2], [] ] 位运算 c++代码 vector<vector<int>> subsets(ve...

2020-04-14 13:23:29 89

原创 只出现一次的数字

题目描述 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 示例 输入: [2,2,1] 输出: 1 使用异或即可 c++代码 int singleNumber(vector<int>& nums) { int c=0,l=nums.size(); if(l==1) ret...

2020-04-13 12:54:20 54

原创 反转字符串

题目描述 编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。 不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。 你可以假设数组中的所有字符都是 ASCII 码表中的可打印字符。 示例 输入:[“h”,“e”,“l”,“l”,“o”] 输出:[“o”,“l”,“l”,“e”,“h”] 此题比较简单 ...

2020-04-05 22:07:53 85

原创 通配符匹配

题目描述 给定一个字符串 s和一个字符模式 p ,实现一个支持 ‘?’ 和 ‘’ 的通配符匹配。 ‘?’ 可以匹配任何单个字符。 '’ 可以匹配任意字符串(包括空字符串)。 示例 输入: s = “adceb” p = “ab” 输出: true 解释: 第一个 ‘’ 可以匹配空字符串, 第二个 '’ 可以匹配字符串 “dce”. 回溯c++代码 bool isMatch(st...

2020-03-30 21:14:10 265

原创 加油站

题目描述 难度中等251收藏分享切换为英文关注反馈在一条环路上有 N 个加油站,其中第 i 个加油站有汽油 gas[i] 升。 你有一辆油箱容量无限的的汽车,从第 i 个加油站开往第 i+1 个加油站需要消耗汽油 cost[i] 升。你从其中的一个加油站出发,开始时油箱为空。 如果你可以绕环路行驶一周,则返回出发时加油站的编号,否则返回 -1。 说明: 如果题目有解,该答案即为唯一答案。 输入数组...

2020-03-29 18:57:17 93

原创 滑动窗口最大值

题目描述 给定一个数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。 返回滑动窗口中的最大值。 示例 输入: nums = [1,3,-1,-3,5,3,6,7], 和 k = 3 输出: [3,3,5,5,6,7] 解释: 滑动窗口的位置 最大值 [1 3 ...

2020-03-29 13:48:58 72

原创 设计循环双端队列

题目描述 设计实现双端队列。 你的实现需要支持以下操作: MyCircularDeque(k):构造函数,双端队列的大小为k。 insertFront():将一个元素添加到双端队列头部。 如果操作成功返回 true。 insertLast():将一个元素添加到双端队列尾部。如果操作成功返回 true。 deleteFront():从双端队列头部删除一个元素。 如果操作成功返回 true。 del...

2020-03-29 00:02:06 83

原创 整数反转

题目描述 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。 示例 输入: -123 输出: -321 c++代码 class Solution { public: int reverse(int x) { if(x==INT_MIN) return 0; if(x<0) return -reverse(-x); ...

2020-03-28 20:53:12 75

原创 跳跃游戏

题目描述 给定一个非负整数数组,你最初位于数组的第一个位置。 数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个位置。 示例 输入: [2,3,1,1,4] 输出: true 解释: 我们可以先跳 1 步,从位置 0 到达 位置 1, 然后再从位置 1 跳 3 步到达最后一个位置。 c++代码 bool canJump(vector<int&g...

2020-03-26 13:25:04 129

原创 分发饼干

题目描述 假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子 i ,都有一个胃口值 gi ,这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j ,都有一个尺寸 sj 。如果 sj >= gi ,我们可以将这个饼干 j 分配给孩子 i ,这个孩子会得到满足。你的目标是尽可能满足越多数量的孩子,并输出这个最大数值。 示例 输入: [1,2...

2020-03-26 13:05:14 113

原创 判断子序列

题目描述 给定字符串 s 和 t ,判断 s 是否为 t 的子序列。 你可以认为 s 和 t 中仅包含英文小写字母。字符串 t 可能会很长(长度 ~= 500,000),而 s 是个短字符串(长度 <=100)。 字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。(例如,"ace"是"abcde"的一个子序列,而"aec"不是)。 示例 ...

2020-03-25 22:11:29 122

原创 恢复二叉搜索树

题目描述 二叉搜索树中的两个节点被错误地交换。 请在不改变其结构的情况下,恢复这棵树。 思路 通过中序遍历找到两个交换的数,记录后交换回来 c++代码 class Solution { public: TreeNode *p,*t1,*t2; void solve(TreeNode* t){ if(!t) return; solve(...

2020-03-24 20:48:28 51

原创 不同的二叉搜索树2

题目描述 给定一个整数 n,生成所有由 1 … n 为节点所组成的二叉搜索树。 方法:递归 c++代码 vector<TreeNode*> solve(int s,int e){ vector<TreeNode*> re; if(s>e) re.push_back(nullptr); for(int i=s;...

2020-03-23 22:04:09 99

原创 二叉树的中序遍历

题目描述 给定一个二叉树,返回它的中序遍历。 c++代码 class Solution { public: vector<int> re; vector<int> inorderTraversal(TreeNode* root) { if(root!=NULL){ inorderTraversal(root-&gt...

2020-03-22 17:43:36 50

原创 逆波兰表达式求值

题目描述 根据逆波兰表示法,求表达式的值。 有效的运算符包括 +, -, *, / 。每个运算对象可以是整数,也可以是另一个逆波兰表达式。 示例 输入: [“10”, “6”, “9”, “3”, “+”, “-11”, “", “/”, "”, “17”, “+”, “5”, “+”] 输出: 22 解释: ((10 * (6 / ((9 + 3) * -11))) + 17) + 5 =...

2020-03-21 15:36:55 80

原创 最小栈

题目描述 设计一个支持 push,pop,top 操作,并能在常数时间内检索到最小元素的栈。 push(x) – 将元素 x 推入栈中。 pop() – 删除栈顶的元素。 top() – 获取栈顶元素。 getMin() – 检索栈中的最小元素。 ...

2020-03-21 14:01:44 61

原创 二叉树的最大深度

题目描述 给定一个二叉树,找出其最大深度。 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。 说明: 叶子节点是指没有子节点的节点。 c++代码 int maxDepth(TreeNode* root) { if(root==NULL) return 0; return max(maxDepth(root->right)+1,maxDept...

2020-03-20 21:14:12 58

原创 对称二叉树

题目描述 给定一个二叉树,检查它是否是镜像对称的。 例如,二叉树 [1,2,2,3,4,4,3] 是对称的 方法:递归 c++代码 bool solve(TreeNode* l,TreeNode* r){ if(l!=NULL&&r!=NULL) return solve(l->left,r->right)&&...

2020-03-20 12:49:27 53

原创 相同的树

题目描述 给定两个二叉树,编写一个函数来检验它们是否相同。 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。 示例 输入: [1,2], [1,null,2] 输出: false c++代码 bool isSameTree(TreeNode* p, TreeNode* q) { if(p==NULL&&q==NUL...

2020-03-19 11:01:11 76

原创 正则表达式匹配

题目描述 给你一个字符串 s 和一个字符规律 p,请你来实现一个支持 ‘.’ 和 ‘*’ 的正则表达式匹配。 示例 输入: s = “aab” p = “cab” 输出: true 解释: 因为 ‘*’ 表示零个或多个,这里 ‘c’ 为 0 个, ‘a’ 被重复一次。因此可以匹配字符串 “aab”。 c++代码 bool solve(string &s,string &...

2020-03-18 23:02:40 152

原创 最长回文子串

题目描述 给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。 示例 输入: “babad” 输出: “bab” 注意: “aba” 也是一个有效答案。 c++代码 string longestPalindrome(string s) { int l=s.length(),maxl=0,st=0; int **...

2020-03-17 19:35:18 62

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

题目描述 给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。 示例 输入: “abcabcbb” 输出: 3 解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。 c++代码 int lengthOfLongestSubstring(string s) { int result=0,k=0; bool f; ...

2020-03-16 21:38:54 67

原创 有效的括号

题目描述 给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。 左括号必须以正确的顺序闭合。 注意空字符串可被认为是有效字符串。 示例 输入: “()[]{}” 输出: true 输入: “([)]” 输出: false 输入: “{[]}” 输出: true 思路 统计相应左右括号的数目,不...

2020-03-15 13:22:45 72

原创 最长公共前缀

题目描述 编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,返回空字符串 “”。 示例 输入: [“flower”,“flow”,“flight”] 输出: “fl” c++代码 string solve(vector<string>& strs,int i){ int j=0; if(strs[j].len...

2020-03-14 14:53:03 76

原创 罗马数字转整数

题目描述 通常情况下,罗马数字中小的数字在大的数字的右边。但也存在特例,例如 4 不写做 IIII,而是 IV。数字 1 在数字 5 的左边,所表示的数等于大数 5 减小数 1 得到的数值 4 。同样地,数字 9 表示为 IX。这个特殊的规则只适用于以下六种情况: I 可以放在 V (5) 和 X (10) 的左边,来表示 4 和 9。 X 可以放在 L (50) 和 C (100) 的左边...

2020-03-13 12:49:46 63

原创 合并K个排序链表

题目描述 合并 k 个排序链表,返回合并后的排序链表。 示例: 输入: [ 1->4->5, 1->3->4, 2->6 ] 输出: 1->1->2->3->4->4->5->6 方法:递归分治 c++代码 ListNode* mergeTwoLists(ListNode* l1, ListNode* l2...

2020-03-12 13:12:52 71

原创 删除链表的倒数第N个节点

题目描述 给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。 示例 给定一个链表: 1->2->3->4->5, 和 n = 2. 当删除了倒数第二个节点后,链表变为 1->2->3->5. 方法: 双指针 c++代码 ListNode* removeNthFromEnd(ListNode* head, int n) {...

2020-03-11 17:39:15 46

原创 两数相加

题目描述 给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。 如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。 您可以假设除了数字 0 之外,这两个数都不会以 0 开头 示例 输入:(2 -> 4 -> 3) + (5 -> 6 -> 4) 输出:7 -> 0 ...

2020-03-10 11:57:11 60

原创 环形链表

题目描述 给定一个链表,判断链表中是否有环。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。 示例 输入:head = [3,2,0,-4], pos = 1 输出:true 解释:链表中有一个环,其尾部连接到第二个节点。 方法:快慢指针 c++代码 bool hasCycle(L...

2020-03-08 22:41:32 58

原创 删除排序链表中的重复元素

题目描述 给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次 示例 输入: 1->1->2->3->3 输出: 1->2->3 c++代码 ListNode* deleteDuplicates(ListNode* head) { if(head==NULL||head->next==NULL) return h...

2020-03-07 23:06:58 58

原创 链表练习

链表 public class Z_node<T> where T:IComparable<T> { public T z_data { get; set; } public Z_node<T> z_next { get; set; } public Z_node(T data,Z_node<T...

2020-03-07 17:10:04 133

空空如也

空空如也

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

TA关注的人

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