自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 283. 移动零 C语言版

给定一个数组nums,编写一个函数将所有0移动到数组的末尾,同时保持非零元素的相对顺序。 示例: 输入: [0,1,0,3,12] 输出: [1,3,12,0,0] 说明: 必须在原数组上操作,不能拷贝额外的数组。 尽量减少操作次数。 遍历数组,如果不是0就复制,是0就继续,最后把零补上。 void moveZeroes(int* nums, int numsSize) { ...

2019-04-01 20:08:31 740

原创 226 反转二叉树 C语言版

翻转一棵二叉树。 示例: 输入: 4 / \ 2 7 / \ / \ 1 3 6 9 输出: 4 / \ 7 2 / \ / \ 9 6 3 1 这个题目非常简单,可以使用递归完成。当节点部位空,交换左右子树,为空时,返回。 struct TreeNode* invertTree(str...

2019-03-29 19:35:52 1137

原创 决策树学习1--熵的计算及python实现代码

决策树(Decision Tree)是在已知各种情况发生概率的基础上,通过构成决策树来求取净现值的期望值大于等于零的概率,评价项目风险,判断其可行性的决策分析方法,是直观运用概率分析的一种图解法。 决策树是一种树形结构,其中每个内部节点表示一个属性上的测试,每个分支代表一个测试输出,每个叶节点代表一种类别。 今天是第一个内容: 特征选择: 首先提出熵的概念:熵是表示随机变量不确定性的度量。...

2019-03-29 19:19:38 1738 1

转载 pytorch下载缓慢解决方法并配置 Jupyter Notebook

pytorch下载缓慢解决方法 在pytorch官网的下载方式太慢,根本无法安装。 可以使用anaconda 的清华镜像:https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs...

2019-03-28 15:31:20 6995

原创 leetcode 860. 柠檬水找零 C语言版

在柠檬水摊上,每一杯柠檬水的售价为 5 美元。 顾客排队购买你的产品,(按账单 bills 支付的顺序)一次购买一杯。 每位顾客只买一杯柠檬水,然后向你付 5 美元、10 美元或 20 美元。你必须给每个顾客正确找零,也就是说净交易是每位顾客向你支付 5 美元。 注意,一开始你手头没有任何零钱。 如果你能给每位顾客正确找零,返回 true ,否则返回 false 。 示例 1: 输入...

2018-11-21 20:19:26 860

原创 leetcode 20. 有效的括号 C语言版

给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。 左括号必须以正确的顺序闭合。 注意空字符串可被认为是有效字符串。   这个可以用一个栈来解决,遇到前半个括号就进栈,遇到后半个括号,就出栈,并进行匹配。 bool isValid(char* s) { char a[1000]...

2018-11-14 21:32:42 752

原创 leetcode 110. 平衡二叉树 C语言版

给定一个二叉树,判断它是否是高度平衡的二叉树。 本题中,一棵高度平衡二叉树定义为: 一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过1。 示例 1: 给定二叉树 [3,9,20,null,null,15,7] 3 / \ 9 20 / \ 15 7 返回 true 。示例 2: 给定二叉树 [1,2,2,3,3,null,null...

2018-10-30 20:22:43 383

原创 leetcode 141. 环形链表 C语言版

给定一个链表,判断链表中是否有环。 bool hasCycle(struct ListNode *head) { struct ListNode *p = head,*q = head; if(p == NULL) return false; else { while(1) { if(p-&...

2018-10-25 20:33:06 593

原创 leetcode 20. 有效的括号 C语言

给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。 左括号必须以正确的顺序闭合。 注意空字符串可被认为是有效字符串。   这个题目可以用辅助栈来解题。当遇到前半个括号出现时进栈。出现后半个括号时出栈进行匹配。 bool isValid(char* s) { char a[102...

2018-10-24 12:04:46 1768 1

原创 leetcode 495. 提莫攻击 C语言版

在《英雄联盟》的世界中,有一个叫 “提莫” 的英雄,他的攻击可以让敌方英雄艾希(编者注:寒冰射手)进入中毒状态。现在,给出提莫对艾希的攻击时间序列和提莫攻击的中毒持续时间,你需要输出艾希的中毒状态总时长。 你可以认为提莫在给定的时间点进行攻击,并立即使艾希处于中毒状态。 示例1: 输入: [1,4], 2 输出: 4 原因: 在第 1 秒开始时,提莫开始对艾希进行攻击并使其立即中毒。中毒状...

2018-10-22 14:44:40 805

原创 leetcode 101. 对称二叉树 C语言版

给定一个二叉树,检查它是否是镜像对称的。 例如,二叉树 [1,2,2,3,4,4,3] 是对称的。 1 / \ 2 2 / \ / \ 3 4 4 3 但是下面这个 [1,2,2,null,3,null,3] 则不是镜像对称的: 1 / \ 2 2 \ \ 3 3 这个题可以用递归的方法解决: bool c...

2018-10-21 14:35:18 636

原创 leetcode 136. 只出现一次的数字 C语言版

给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 说明: 你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗? 示例 1: 输入: [2,2,1] 输出: 1 示例 2: 输入: [4,1,2,1,2] 输出: 4 此题可以用位运算来解决。 异或(^)符号是两位相同时,返回0,不同时,返回1。 即1 ^ 1 ...

2018-10-20 17:15:30 336

原创 leetcode 100. 相同的树 C语言版

给定两个二叉树,编写一个函数来检验它们是否相同。 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。 示例 1: 输入: 1 1 / \ / \ 2 3 2 3 [1,2,3], [1,2,3] 输出: true 示例 2: 输入: 1 ...

2018-10-19 20:43:20 529

原创 leetcode 58. 最后一个单词的长度 C语言版

给定一个仅包含大小写字母和空格 ' ' 的字符串,返回其最后一个单词的长度。 如果不存在最后一个单词,请返回 0 。 说明:一个单词是指由字母组成,但不包含任何空格的字符串。 示例: 输入: "Hello World" 输出: 5 这道题从后面向前遍历,找到第一个字母开始计数,直到第一个不是字母为止。要考虑只有一个单词的情况。 int lengthOfLastWord(char* ...

2018-10-19 20:37:38 610

原创 leetcode 70. 爬楼梯 C语言版

假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数。 示例 1: 输入: 2 输出: 2 解释: 有两种方法可以爬到楼顶。 1. 1 阶 + 1 阶 2. 2 阶 示例 2: 输入: 3 输出: 3 解释: 有三种方法可以爬到楼顶。 1. 1 阶 + 1 阶 + 1 阶 2. ...

2018-10-18 17:51:40 1063

原创 leetcode 21. 合并两个有序链表 C语言版

将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。  示例: 输入:1->2->4, 1->3->4 输出:1->1->2->3->4->4 可以通过一次遍历同时扫描两个链表,时间复杂度为O(m + n): struct ListNode* mergeTwoLists(struct List...

2018-10-17 16:23:39 1743

原创 leetcode 19. 删除链表的倒数第N个节点 C语言版

给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。 示例: 给定一个链表: 1->2->3->4->5, 和 n = 2. 当删除了倒数第二个节点后,链表变为 1->2->3->5. 这个题目可以用一次遍历来完成。 定义一个节点向后遍历,当走了n个节点后,第二个节点从头节点出发,两个节点一起向后遍历。 遍历结束时,第二个节点的...

2018-10-17 14:49:59 465

原创 leetcode 4. 两个排序数组的中位数 C语言版

采用时间复杂度O(n),空间复杂度为O(1)的遍历算法: double findMedianSortedArrays(int* nums1, int nums1Size, int* nums2, int nums2Size) { int i=nums1Size+nums2Size,j,size=0,a=0,b=0,l=0; double s1,s2; if(i%2==0) ...

2018-10-15 20:06:20 469

原创 leetcode 1. 两数之和 C语言版

首先是直接暴力法: 时间复杂度为O(n2),空间复杂度为O(1): int* twoSum(int* nums, int numsSize, int target) { int* a = (int*)malloc(sizeof(int) * 2); int i,j; for(i = 0;i < numsSize - 1;i++) { fo...

2018-10-15 15:59:57 858

原创 leetcode 2. 两数相加 C语言版

struct ListNode* addTwoNumbers(struct ListNode* l1, struct ListNode* l2) { struct ListNode* l = (struct ListNode*)malloc(sizeof(struct ListNode)); struct ListNode* p = l1,* q = l2, * t = l; ...

2018-10-14 13:16:38 1696

空空如也

空空如也

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

TA关注的人

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