- 博客(27)
- 资源 (9)
- 收藏
- 关注
转载 梯度消失(vanishing gradient)和梯度爆炸(exploding gradient)
原文链接:https://blog.csdn.net/guoyunfei20/article/details/78283043 参考链接:https://www.cnblogs.com/DLlearning/p/8177273.html 神经网络中梯度不稳定的根本原因:在于前层上的梯度的计算来自于后层上梯度的乘积(链式法则)。当层数很多时,就容易出现不稳定。下边3个隐含层为例: 其b1的...
2019-01-30 23:05:16 556
原创 剑指Offer 最小的K个数
输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,。 方法一:基于快排的Partition,时间复杂度O(n) 解析:基于数组的第k个数字来调整,则使得比第k个数字小的所有数字都位于数组的左边,比第个数字大的所有数字都位于数组的右边。这样调整之后,位于数组中左边的k个数字就是最小的k个数字(这k个数字不一定是排序的). ...
2019-01-30 15:07:06 168
原创 剑指Offer 连续子数组的最大和
HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学。今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决。但是,如果向量中包含负数,是否应该包含某个负数,并期望旁边的正数会弥补它呢?例如:{6,-3,-2,7,-15,1,2,2},连续子向量的最大和为8(从第0个开始,到第3个为止)。给一个数组,返回它的最大连续子序列的和,你会...
2019-01-30 11:34:07 127
原创 剑指Offer 数组中出现次数超过一半的数
题目描述 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。 方法一:基于快排的partition方法 时间复杂度分析:O(n) class Solution { public: int partition(vector...
2019-01-25 21:46:17 149 2
原创 剑指Offer 字符串的排列
题目描述 输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。 输入描述: 输入一个字符串,长度不超过9(可能有字符重复),字符只包括大小写字母。 解析: 对于无重复值的情况 * 固定第一个字符,递归取得首位后面的各种字符串组合; * 再...
2019-01-24 11:23:47 84
原创 剑指Offer 二叉搜索树与双向链表
题目:输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。比如输入下图中左边的二叉搜索树,则输出转换之后的排序双向链表。 按照中序遍历的顺序,当我们遍历转换到根结点(值为10的结点)时,它的左子树已经转换成一个排序的链表了,并且处在链表中的最后一个结点是当前值最大的结点。我们把值为8的结点和根结点链接起来,此时链表中的最后...
2019-01-23 16:45:34 93
原创 剑指Offer 复杂链表的复制
题目描述 输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点),返回结果为复制后复杂链表的head。(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空) 牛客网提交AC代码: /* struct RandomListNode { int label; struct RandomListNode *nex...
2019-01-21 21:50:33 104
原创 POJ - 3061 Subsequence (逻辑题)
Description A sequence of N positive integers (10 < N < 100 000), each of them less than or equal 10000, and a positive integer S (S < 100 000 000) are given. Write a program to find the min...
2019-01-21 11:09:10 235
原创 PAT甲级 1125 Chain the Ropes (25 分)贪心算法
1125 Chain the Ropes (25 分) Given some segments of rope, you are supposed to chain them into one rope. Each time you may only fold two segments into loops and chain them into one piece, as shown by t...
2019-01-19 12:02:48 304
原创 PAT甲级 1124 Raffle for Weibo Followers (20 分)水题
1124 Raffle for Weibo Followers (20 分) John got a full mark on PAT. He was so happy that he decided to hold a raffle(抽奖) for his followers on Weibo -- that is, he would select winners from every N fo...
2019-01-19 12:00:47 218
原创 剑指Offer 二叉树中和为某一值的路径
输入一颗二叉树的跟节点和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。(注意: 在返回值的list中,数组长度大的数组靠前) 解析: 利用dfs,即对应的二叉树前序遍历即可。用vector来存储经过的点,注意最后回朔需要pop_back即可。 牛客网AC代码: /* struct TreeNode { int ...
2019-01-16 20:25:42 109
原创 剑指Offer 二叉搜索树的后序遍历序列
输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。 解析: 左子树的所有节点都小于根节点,右子树的所有节点都大于根节点。而根节点位于数组的末端.所以可以利用递归求解本题。 牛客网AC代码如下: class Solution { public: bool VerifySquenceOfBST(ve...
2019-01-14 21:33:04 124
原创 剑指Offer 从上到下打印二叉树
从上往下打印出二叉树的每个节点,同层节点从左至右打印。 解析:通过队列即可轻松实现bfs,即对应的层次遍历 牛客网AC代码: /* struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(int x) : val(x), left(NULL), right(NULL...
2019-01-14 19:57:07 110
原创 剑指Offer 栈的压入、弹出序列
输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度是相等的)。 解析: 需要通过一个辅助栈来AC掉,具体看实现代码: class Solution { ...
2019-01-14 00:22:09 105
原创 剑指Offer 包含min函数的栈
定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1))。 解析: 需要通过一个辅助栈来完成。具体看程序注释。 牛客网AC代码: class Solution { public: void push(int value) { if(s1.empty()){ s1.push(value); ...
2019-01-12 13:52:10 78
原创 剑指Offer 顺时针打印矩阵
输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下4 X 4矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数字1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10. 注意: 提交代码时,主要的问题出在没有控制好后两个for循环,需要加入条件判断,防止出现单行或者单列的情况。 牛客网AC代码...
2019-01-10 19:22:40 170
原创 剑指Offer 二叉树的镜像
操作给定的二叉树,将其变换为源二叉树的镜像。 输入描述: 二叉树的镜像定义:源二叉树 8 / \ 6 10 / \ / \ 5 7 9 11 镜像二叉树 8 / \ 10 6 / \ / \ 11 9 7 5 牛客网AC...
2019-01-10 19:15:36 88
原创 剑指Offer 树的子结构
输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构) 思路: 1、原二叉树走前序遍历,试图发现哪个节点的值和被判断子树的根节点相同; 如果一直到最后也没有找到那么肯定不是 2、如果找到了,就两个二叉树一起前序遍历,试图发现两个二叉树同时遍历完成,且同样的左右子树遍历过程中的节点值均相同,同时遍历完成说明有相同的形状,左右子树遍历过程中的节点值均相同说明...
2019-01-07 20:16:50 76
原创 剑指Offer 合并两个排序的链表
输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。 解法一:递归 /** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NUL...
2019-01-07 19:42:36 69
原创 剑指Offer 反转链表
输入一个链表,反转链表后,输出新链表的表头。 牛客网AC代码: 一、非递归 /* struct ListNode { int val; struct ListNode *next; ListNode(int x) : val(x), next(NULL) { } };*/ class Solution { public: ListNode* ReverseList(L...
2019-01-07 19:22:36 129
原创 华为2016研发工程师编程题
[编程题] 删数 时间限制:1秒 空间限制:32768K 有一个数组a[N]顺序存放0~N-1,要求每隔两个数删掉一个数,到末尾时循环至开头继续进行,求最后一个被删掉的数的原始下标位置。以8个数(N=7)为例:{0,1,2,3,4,5,6,7},0->1->2(删除)->3->4->5(删除)->6->7->0(删除),如此循环直到最后一个数被...
2019-01-05 18:25:14 328
原创 华为上机模拟题 0交换排序
长度为n的数组乱序存放着0至n-1. 现在只能进行0与其他数的交换,完成以下函数 思路: 对数字array[i]来说,当array[i]与所处下标i对应不上。先将0与array[i]位置的数字交换,即swap_with_zero(array, len, array[i]); 此时0在array[i]位置,然后交换0与i即可。 /** * 交换数组里n和0的位置 * array: 存储[...
2019-01-05 13:59:04 1675
原创 剑指Offer 链表中倒数第k个结点
输入一个链表,输出该链表中倒数第k个结点。 牛客网AC代码: /* struct ListNode { int val; struct ListNode *next; ListNode(int x) : val(x), next(NULL) { } };*/ class Solution { public: ListNode* FindKthToTail(ListNod...
2019-01-05 00:10:48 95
原创 剑指Offer 调整数组顺序使奇数位于偶数前面
输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。 法一: 通过模仿冒泡排序交换即可。 class Solution { public: void reOrderArray(vector<int> &array) { for(int...
2019-01-03 20:18:03 64
原创 PAT甲级 1111 Online Map (30 分)dijkstra + dfs
1111 Online Map (30 分) Input our current position and a destination, an online map can recommend several paths. Now your job is to recommend two paths to your user: one is the shortest, and the other...
2019-01-02 19:47:01 322
原创 剑指Offer 数值的整数次方
给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。 牛客网AC代码: 注意0和负数的处理即可。 class Solution { public: double fun(double base,int exponent){ double result = 1; for(int i=0;i<...
2019-01-01 22:51:54 91
原创 剑指Offer 二进制中1的个数
输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。 牛客AC代码: 注意不能对数本身右移,因为当输入负数时会造成死循环! class Solution { public: int NumberOf1(int n) { int count = 0; unsigned int flag = 1; while(fla...
2019-01-01 22:14:27 86
吴恩达2014机器学习作业(全部完整!!!作业全部代码已补全且运行结果无误!!!)
2018-06-20
吴恩达机器学习作业(完整版!!亲自做过!)
2018-05-29
Python网络数据采集
2018-04-27
机器学习实战源代码
2018-04-27
机器学习实战
2018-04-27
Effective C++中文版
2018-04-27
OpenCV3-毛星云编程入门
2018-04-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人