原创 基於PyTorch的線性迴歸算法

基於PyTorch使用Jupyter Notebook環境實現線性迴歸算法; 使用均方差作爲損失函數; 使用隨機批梯度下降作爲參數優化算法; 動畫顯示模型擬合數據的過程; 序列化模型參數; from __future__ impo

原创 深度學習優化算法

Mini-batch梯度下降法 批梯度下降時,每一次迭代代價函數都會降低(如果某一次不是,說明出問題了,可能要改變學習率),而mini-batch梯度下降時,不一定每次都降低,但是總的趨勢是下降的; Mini-batch的大小設爲m

原创 深度學習訓練技巧

參數初始化 Zero initialization Random initialization He initialization Try “He Initialization”; this is named for the fir

原创 買賣股票的最佳時機

買賣股票的最佳時機I public class Solution { public int maxProfit(int prices[]) { int maxprofit = 0; for

原创 包含min函數的棧

class Solution { public: void push(int value) { s1.push(value); if(!s2.empty()) {

原创 連續子數組的最大和

動態規劃 class Solution { public: int FindGreatestSumOfSubArray(vector<int> array) { int max_sum = INT_MIN;

原创 兩個鏈表的第一個節點

/* struct ListNode { int val; struct ListNode *next; ListNode(int x) : val(x), next(NULL) { } };*/ class Solut

原创 二叉樹的下一個節點

/* struct TreeLinkNode { int val; struct TreeLinkNode *left; struct TreeLinkNode *right; struct TreeL

原创 之字形打印二叉樹

與層次打印二叉樹思路一致,注意每隔一層反轉一次即可。 /* struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right;

原创 判斷是否爲平衡二叉樹

平衡二叉樹是一棵空樹或它的左右兩個子樹的高度差的絕對值不超過1,並且左右兩個子樹都是一棵平衡二叉樹。 class Solution { public: bool IsBalanced_Solution(TreeNode*

原创 數值的整數次方

注意指數可能爲負數,使用遞歸或者迭代的方法解決,迭代方法中可使用位運算加速。 class Solution { public: double Power(double base, int exponent) {

原创 重建二叉樹

從前序或者後序遍歷中尋找到根節點(第一個或最後一個),再從中序遍歷中找到根節點的位置,切分爲左右子樹,依次反覆。 前序遍歷與中序遍歷 /** * Definition for a binary tree node. * s

原创 數組中重複的數字

先對數組進行排序,尋找重複的數字。 利用hash思想尋找重複的數字。 若數組中無重複數字,則排序後數字iii應出現在數組中下標爲iii的位置上。 class Solution { public: // Para

原创 字符串的全排列

class Solution { public: vector<string> Permutation(string str) { vector<string> result; if(str.l

原创 卷積後的特徵圖大小計算

輸入圖片大小 W×W Filter大小 F×F 步長 S padding的像素數 P 輸出特徵圖大小 N = (W − F + 2P ) / S + 1