自定义博客皮肤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 666

原创 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 1050

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

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

2019-03-29 19:19:38 1656 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 6810

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

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

2018-11-21 20:19:26 815

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

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

2018-11-14 21:32:42 704

原创 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 305

原创 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 539

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

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

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

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

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

2018-10-22 14:44:40 723

原创 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 573

原创 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 295

原创 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 497

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

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

2018-10-19 20:37:38 568

原创 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 1005

原创 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 1695

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

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

2018-10-17 14:49:59 428

原创 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 438

原创 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 802

原创 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 1647

空空如也

空空如也

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

TA关注的人

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