- 博客(16)
- 收藏
- 关注
原创 【分治法】解决子问题的求解
分治法 1) 该问题可以分解为若干个规模较小的相同问题,即该问题具有最优子结构性质。 2) 利用该问题分解出的子问题的解可以合并为该问题的解; 3) 该问题所分解出的各个子问题是相互独立的,即子问题之间不包含公共的子问题。应用到归并排序每次排序的时候左右两边是已经排好顺序的两块数组,不用再组内排序,而是对于两个数组之间无序情况使用外排序将不同的数...
2019-07-25 20:45:31 2945
原创 C++:vector常用操作
(1)迭代器iterator:begin()end()(2)容量empty() 判断是否为空size() 返回元素的个数capacity返回分配存储空间的大小(3)访问元素使用数组形式front是第一个元素的引用back是最后一个元素的引用at指定索引位置(4)修改元素push_back(val) 添加元素到最后一个位置pop_b...
2019-07-16 15:57:16 696
原创 二分查找
二分查找的先决条件 :有序序列#include <iostream>#include <cstdio>#include <cstring>#include <cmath>#include <cstdlib>using namespace std;int binarySearch(int *a, int len, i...
2019-07-16 15:10:12 629
原创 二叉树的中序遍历
给定一个二叉树,返回它的中序遍历。示例:输入: [1,null,2,3] 1 \ 2 / 3输出: [1,3,2]这道题由于输出是个vector无法使用递归定义,故使用非递归形式,注意当前指针和栈的压入与弹出。/** * Definition for a binary tree node. * struct TreeNode { ...
2019-07-14 21:29:29 1373
原创 二叉树的三种遍历,递归和非递归
递归转非递归,用到了栈的前进后出的特点,使得保存当前函数的状态前序遍历,每次的操作:从根节点向左遍历,每次使用栈进行存储,直到空指针,则指向该结点的有孩子中序遍历,每次的操作:从根节点向左遍历,每次使用栈进行存储,直到空指针,则指向该结点的有孩子后序遍历,每次的操作:从根节点向左遍历,每次使用栈进行存储,直到空指针,输出的时候判断该节点如果没有右孩子或者右子树被访问过了,则可以输出该...
2019-07-14 21:10:13 756
原创 C++: 形参的*& 与 *的理解
简单理解,如下代码:int Swap1(int a, int b) { int tmp = a; a = b; b = tmp;}int Swap2(int &a, int &b) { int tmp = a; a = b; b = tmp;}Swap1中a,b的交换,形参不会改变实参的数值;Swap2中的a,b的交...
2019-07-13 20:29:40 7031 3
原创 链表:两数相加
给出两个非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照逆序的方式存储的,并且它们的每个节点只能存储一位数字。如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。您可以假设除了数字 0 之外,这两个数都不会以 0开头。示例:输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 0 -&...
2019-07-13 16:36:26 581
原创 RNN和LSTM的输入和输出
input shape: batch_size, len_sentence, embeddingRNN: hidden_size(output, state) =tf.nn.dynamic_rnn(lstm_cell, X_in, initial_state=_init_state,time_major=False)output shape: batch_size, len_sent...
2019-07-12 15:28:03 1359 2
原创 模型评估指标
预测与真实值 real value prediction 1 0 1 TP FP 0 FN TN Accuracy意义是预测对的样本占所有样本的整体比例。Precision这个是在预测者的角度进行评分,检测被预测为正确的正...
2019-07-12 15:14:56 582
原创 malloc 与new区别和使用
简单介绍(日后完善)当我们使用关键字new在堆上动态创建一个对象A时,比如A* p = new A(),它实际上做了三件事:向堆上申请一块内存空间(做够容纳对象A大小的数据) 分配对象的空间 调用构造函数 (调用A的构造函数(如果A有的话))把对象的成员进行初始化 返回正确的指针malloc 则必须要由我们计算字节数,并且在返回后强行转换为实际类型的指针。malloc 函数返回...
2019-07-10 16:26:25 588
原创 在C++和C中的typedef struct 与 struct
在C++和C中typedef struct都是定义结构体类型,typedef struct name{}alias(别名),其中 alias代表的是结构体的数据类型。//Ctypedef struct Link { int data; struct Link *next;}link;//link 是 struct Link的别名struct Link { i...
2019-07-10 14:03:40 656
原创 linux 常见命令
tee命令tee读取standard input,并且同时写入standard output和文件。简而言之,将输入一方面写入文件,一方面写入STDOUT。
2019-07-06 15:26:45 521
原创 pytorch的ModuleNotFoundError: No module named 'torch'
我的问题是python安装版本和torch的版本不对应问题pytorch 0.3.1 py36_cuda9.0.176_cudnn7.0.5_2 [cuda90] pytorchpython 3.7.3 h0371630_0 在conda中对python...
2019-07-05 10:13:43 48838 4
原创 数据结构之堆结构
核心:堆树堆的定义:1. 堆是一颗完全二叉树;2. 满足每个结点的值总是大于等于(或者小于等于)其左右孩子的数值3. 堆中的子树都是堆树简而言之,堆是一颗完全二叉树,且子树都是父节点的值大于等于左右孩子的值。数组表示的话,因为完全二叉树的特点,下标得到确定父节点的索引为i(i>=1),则左右孩子为2i和2i+1;又因为子树都是堆树,则array[i] >= ...
2019-07-04 15:06:19 885
原创 不同的交叉熵函数 cross_entropy
softmax_cross_entropy_with_logits 输入 [batch, num_classes], labels应该和输入维数一样,一般需要进行one-hot编码。sparse_softmax_cross_entropy_with_logits省去了softmax_cross_entropy_with_logits labels必须进行one-hot编码的需要,内部进...
2019-07-02 19:51:16 735
原创 tf.Variable和tf.get_variable的区别
关于变量的字段区别和使用tf.Variable与tf.get_variable()tf.Variable(initial_value=None, trainable=True, collections=None, validate_shape=True, caching_device=None, name=None, variable_def=None, dtype=None, expe...
2019-07-02 15:03:07 666
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人