自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(48)
  • 资源 (2)
  • 收藏
  • 关注

原创 展现自己最真实的一面

展现自己最真实的一面

2018-11-04 11:23:54 340

原创 管理全局唯一变量的类(单例模式)

template<typename T>class Singleton {public: static T* instance() { return _s_instance; }protected: Singleton() {} virtual ~Singleton() {}private: //only declare; forbiden copy and assign Singleton(const Singleton.

2020-08-16 15:31:49 424

原创 C++实现一个简单的线程池

ThreadPool.h#pragma once#include <iostream>#include<stdlib.h>#include<thread>#include<mutex>#include<condition_variable>#include<vector>#include<funct...

2020-04-26 23:00:53 212

原创 堆排序(shiftDown, shiftUp, heapify)

堆排序的过程包含shiftDown, shiftUp, heapify

2020-03-20 09:10:47 1046

原创 冒泡,插入,归并,快速排序(优化)

冒泡排序如何优化?插入排序比一般的O(n2)的排序算法要好,因为它会提前终止;递归排序和快速排序有个优化点。

2020-03-19 15:28:08 196

原创 二分查找问题(BinarySearch, Floor, Ceil)

二分查找是很基本的查找算法,但二分查找的变种问题(floor, ceil)也很重要,并且不那么简单。

2020-03-14 12:40:31 198

原创 使用迭代实现二叉树的前中后序遍历(C++)

使用递归实现二叉树的前中后序遍历很简单,写法基本相同。但用迭代稍有不同,较递归稍难理解和记忆,但迭代效率更高。下面是用迭代实现二叉树的前中后序遍历的代码示例。#include <iostream>#include <vector>#include <stack>using namespace std;//Definition for a bina...

2020-01-18 17:27:52 1021 1

原创 红黑树

2020-01-06 16:49:36 61

原创 算法-使用哨兵节点处理链表头部判断问题

###问题:删除链表中等于给定值val的所有节点。示例:输入: 1->2->6->3->4->5->6, val = 6输出: 1->2->3->4->5###分析:如果是删除中间节点,问题很简单;但如果涉及头部连续的节点需要被删除,就很复杂。加入一个哨兵节点,让问题容易解决/** * Definiti...

2020-01-04 19:24:13 179

原创 算法-用快慢指针解决循环问题

一个“快乐数”定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然后重复这个过程直到这个数变为 1,也可能是无限循环但始终变不到 1。如果可以变为 1,那么这个数就是快乐数。示例:输入: 19输出: true解释:12 + 92 = 8282 + 22 = 6862 + 82 = 10012 + 02 + 02 = 1class Soluti...

2020-01-03 23:31:26 257

原创 算法-数组的相对排列(用map解决数组的频次问题)

#问题:给你两个数组,arr1 和arr2,arr2中的元素各不相同arr2 中的每个元素都出现在arr1中对 arr1中的元素进行排序,使 arr1 中项的相对顺序和arr2中的相对顺序相同。未在arr2中出现过的元素需要按照升序放在arr1的末尾。示例:输入:arr1 = [2,3,1,3,2,4,6,7,9,2,19], arr2 = [2,1,4,...

2020-01-03 23:14:11 138

原创 C++实现int转char*和char*转int

#include <iostream>#include <string.h>using namespace std;/***将字符串转成int***/int char2int(const char* str) { const char* p = str; bool neg = false; int res = 0; if (*str...

2020-01-03 16:13:49 5635 1

原创 Demo-深度学习使用数据集进行训练和测试

一个包含数据输入和预处理流程的使用数据集进行训练和测试的完整例子import tensorflow as tftrain_files = tf.train.match_filenames_once("path/to/train-file-*")test_files = tf.train.match_filenames_once("path/to/test-file-*")# 定义pa...

2019-01-06 15:43:27 2802 4

原创 LeNet - 5模型实现_MNIST数据

mnist_inference.pyimport tensorflow as tf#配置神经网络的参数IMPUT_NODE = 784OUTPUT_NODE = 10IMAGE_SIZE = 28NUM_CHANNELS = 1NUM_LABELS = 10# 第一层卷积层的尺寸和深度CONV1_DEEP = 32CONV1_SIZE = 5# 第二层卷积层的尺寸和...

2018-12-28 14:55:35 422

原创 情商和逆商比智商更重要

情商,最重要的是与人相处和与人合作的能力;逆商的核心是但你遇到困难和挫折时,如何去克服,如何艰难前行。在这个竞争激烈的社会里,每个人都会有压力和遇到困难。关键的是如何突破自己。...

2018-12-07 20:48:12 742

原创 滑动平均模型:使用ExponentialMovingAverage

参考自:TensorFlow 实战Google深度学习框架 import tensorflow as tf#定义一个变量用于计算滑动平均,这个变量的初始值为0。v1 = tf.Variable(0, dtype=tf.float32)#此变量模拟神经网络中的迭代的轮数,可以用于动态控制衰减率step = tf.Variable(0, trainable=False)#定义了一个...

2018-12-02 11:59:03 378

原创 定义含正则化的损失函数的神经网络样例

参考自:TensorFlow 实战Google深度学习框架import tensorflow as tf#获取一层神经网络边上的权重,并将这个权重的L2正则化损失加入到名称为“losses”的集合中def get_weight(shape, lambda1): #生成一个变量 var = tf.Variable(tf.random_normal(shape), dtyp...

2018-12-02 10:51:12 471

原创 完整神经网络样例程序

参考自:TensorFlow 实战Google深度学习框架import os os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'import tensorflow as tffrom numpy.random import RandomState#定义训练数据的batch的大小batch_size = 8#定义神经网络的参数w1 = tf....

2018-12-01 17:53:35 374

原创 进程间通信

进程间通信主要包括管道(普通管道PIPE, 流管道s_pipe, 命名管道);系统IPC(包括消息队列, 信号, 共享存储);套接字(SOCKET).

2018-11-27 21:21:56 84

原创 32位的Int转成长度为4的8位Char数组

int num = 9999;char c[4] = {0};方法一:使用memcpy函数,需要注意大小端问题memcpy(c, (char*)&amp;num, 4)结果:c[0] = 15, c[1] = 39, c[2] = 0, c[3] = 0 方法二:位操作c[3] = num &amp; 0xFF;num = num &gt;&gt; 8;c[2]...

2018-11-25 21:43:46 2393 1

原创 广度优先遍历

广度优先搜索遍历类似于树的按层次遍历。 对于无向连通图,广度优先搜索是从图的某个顶点v0出发,在访问v0之后,依次搜索访问v0的各个未被访问过的邻接点w1,w2,…。然后顺序搜索访问w1的各未被访问过的邻接点,w2的各未被访问过的邻接点,…。即从v0开始,由近至远,按层次依次访问与v0有路径相通且路径长度分别为1,2,…的顶点,直至连通图中所有顶点都被访问一次。广度优先搜索的顺序不是...

2018-11-20 23:03:43 7397

转载 全排列解析

转自:http://blog.csdn.net/lemon_tree12138/article/details/50986990 概述对数组进行全排列是一个比较常见问题,如果是一个比较喜欢考算法的公司(貌似一些大公司都比较喜欢考算法),那么估计就会考察应聘者这个全排列的问题了(就算不让你编写完整代码,也会让你描述大致的思路)。这个问题也难也难,说易也易,下面我就来对这个问题进行一个比较全面的...

2018-11-20 22:25:32 138

原创 生成连续的不限长度的数字字符串

#include &lt;string&gt;#include &lt;iostream&gt;using namespace std;class NumString{public: NumString() { m_str = '0'; m_iLenght = 1; } ~NumString() { }public: NumString&amp; opera...

2018-10-28 12:55:26 301

转载 原码,补码,反码

转自:https://blog.csdn.net/Jason_M_Ho/article/details/78700434       数值在计算机中是以补码的方式存储的,在探求为何计算机要使用补码之前, 让我们先了解原码, 反码和补码的概念。  对于一个数, 计算机要使用一定的编码方式进行存储。 原码, 反码, 补码是计算机存储一个具体数字的编码方式。       一个数在计算机中的二进...

2018-10-24 11:12:01 109 1

转载 操作系统分类

转自:https://blog.csdn.net/qq546770908/article/details/530891691. 批处理操作系统  批处理(BatchProcessing)操作系统的工作方式是:用户将作业交给系统操作员,系统操作员将许多用户的作业组成一批作业,之后输入到计算机中,在系统中形成一个自动转接的连续的作业流,然后启动操作系统,系统自动、依次执行每个作业。最后由操作员将...

2018-10-23 17:01:30 161

转载 几种操作系统调度算法

转自:https://blog.csdn.net/wujiafei_njgcxy/article/details/77257500一、先来先服务和短作业(进程)优先调度算法1.先来先服务调度算法先来先服务(FCFS)调度算法是一种最简单的调度算法,该算法既可用于作业调度,也可用于进程调度。当在作业调度中采用该算法时,每次调度都是从后备作业队列中选择一个或多个最先进入该队列的作业,将它们...

2018-10-23 16:53:38 7950

原创 Socket 编程(Windows)

参考:https://blog.csdn.net/xiaoquantouer/article/details/58001960一、Socket介绍socket即套接字,用于描述地址和端口,是一个通信链的句柄。应用程序通过socket向网络发出请求或者回应。sockets(套接字)编程有三种,流式套接字(SOCK_STREAM),数据报套接字(SOCK_DGRAM),原始套接字(SOCK...

2018-10-23 14:15:18 147

原创 Linux C多线程编程

场景:对于一个status = 0, 线程1会修改status, 线程2会读取status,如果status为0则阻塞,如果非0则继续执行。pthread_mutex_t mutex;pthread_cond_t cond;status = 0;void thread1_fun(void* arg){ pthread_mutex_lock(&amp;mutex); ...

2018-10-22 23:21:09 132

原创 C++内存相关知识

内存碎片:内存碎片一般是由于空闲的连续空间比要申请的空间小,导致这些小内存块不能被利用。产生内存碎片的方法很简单,举个例: 假设有一块一共有100个单位的连续空闲内存空间,范围是0~99。如果你从中申请一块内存,如10个单位,那么申请出来的内存块就为0~9区间。这时候你继续申请一块内存,比如说5个单位大,第二块得到的内存块就应该为10~14区间。如果你把第一块内存块释放,然后再申请一块大于10个单...

2018-10-22 21:32:37 144

转载 常见C++面试题及基本知识点总结

转自:http://www.cnblogs.com/LUO77/p/5771237.html  1. 结构体和共同体的区别。定义:结构体struct:把不同类型的数据组合成一个整体,自定义类型。共同体union:使几个不同类型的变量共同占用一段内存。地址:struct和union都有内存对齐,结构体的内存布局依赖于CPU、操作系统、编译器及编译时的对齐选项。关于内...

2018-10-19 16:21:43 154

原创 面试题-找出数组中第二大的数

int secondMaxNumber(int *arr, int n){    if(arr == NULL)        return -1;    int max = arr[0];    int i = 0;    while(arr[i] == max)    {        i++;    }    int second = arr[i];        f...

2018-10-19 15:42:10 1845

原创 C++中的静态绑定和动态绑定(多态)

C++具有多态的特性,理解多态原理需要理解以下四个概念。       1、对象的静态类型(static type):就是它在程序中被声明时所采用的类型(或理解为类型指针或引用的字面类型),在编译期确定;       2、对象的动态类型(dynamic type):是指“目前所指对象的类型”(或理解为类型指针或引用的实际类型),在运行期确定;       这两个概念一般发生在基类和派生类...

2018-10-18 22:09:46 5088

转载 C++虚函数表解析

转自:https://www.cnblogs.com/hushpa/p/5707475.html先看代码:#include &lt;iostream&gt;using namespace std;class Base {public: virtual void f() {cout&lt;&lt;"base::f"&lt;&lt;endl;} virtual vo...

2018-10-16 20:39:00 153

转载 B-树和B+树

转载自:http://www.cnblogs.com/yangecnu/p/Introduce-B-Tree-and-B-Plus-Tree.html前面讲解了平衡查找树中的2-3树以及其实现红黑树。2-3树种,一个节点最多有2个key,而红黑树则使用染色的方式来标识这两个key。维基百科对B树的定义为“在计算机科学中,B树(B-tree)是一种树状数据结构,它能够存储数据、对其进行排序...

2018-10-14 16:00:25 115

原创 二叉树的基本概念与性质

二叉树的概念与性质:1.n个节点的二叉树一共有((2n)!)/(n! * (n+1)!)种 2.n层二叉树的第n层最多为2^(n-1)个 3.二叉树节点计算公式 N = n0+n1+n2,度为0的叶子节点比度为2的节点数多一个。N=1*n1+2*n2+1 4.对任何一棵二叉树T,如果其终端节点数为n0,度为2的节点数为n2,则n0=n2+1 5.具有n个节点的完全二叉树的深度为log2...

2018-10-14 12:51:18 814

原创 算法---合并数字,使数组的最小值最大

给定一个整数数组arr[m],合并次数n,进行n次合并使得数组的最小值最大,求这个最大值例如:arr = {1, 7, 2, 2, 5, 9}, n = 3, 首先合并1, 7, 得到[8, 2, 2, 5, 9], 然后合并2, 2, 得到[8, 4, 5, 9], 最后合并4, 5, 得到[8, 9, 9], 数字的下限为8,即为所求。 解答:1. 从小到大选出n个数,记为A1...

2018-10-10 23:15:11 1332 9

原创 Git基本操作

从Linux机上克隆远程仓库,创建分支和跟踪,修改,提交等操作基本命令:&gt; git init        #初始化本地cangku&gt; git clone  [email protected]:yanfp/**.*git    #克隆从远程仓库fork后的仓库SSH地址&gt; git checkout -b develop origin/develop    #创建d...

2018-08-29 12:08:44 103

原创 C++变量的存储位置

void main(){    int b; //栈    char s[] = "abc"; //栈    char *p1,*p2; //栈    char *p3 = "123456"; //123456在常量区,p3在栈上    static int c = 0; //全局(静态)初始化区     p1 = (char *)malloc(10); //分配得来得10字节的区域...

2018-08-06 20:56:26 352

原创 经验1

内存不足时,试着把大的计算拆分成多个小的计算,有时会起到意想不到的效率。

2018-08-01 20:04:02 109

原创 深度优先遍历(递归和非递归实现)

深度优先搜索(Depth-First-Search,简称DFS)。这是一种常见的用于遍历或搜索树或者图的算法。基本实现思想:(1)访问顶点v;(2)从v的未被访问的邻接点中选取一个顶点w,从w出发进行深度优先遍历;(3)重复上述两步,直至图中所有和v有路径相通的顶点都被访问到。#include &lt;vector&gt;#include &lt;queue&gt;#include &lt;sta...

2018-07-08 12:47:00 18017

QuantileRegressionForest.pdf

分位数回归森林论文,基于随机森林,可进行分位数回归预测

2018-12-13

VC实现画图(绘点,线,矩形,圆)

VC实现绘图,绘点、线、面,串行化实现重绘,实现颜色,线条宽度等属性的更改。

2015-03-15

空空如也

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

TA关注的人

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