自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 收藏
  • 关注

原创 【剑指offer】包含min函数的栈

题目:定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的min函数。在该栈中,调用min,push及 pop的时间复杂度都是O(1)#include <iostream>#include <stack>#include <assert.h>using namespace std;template <typename T&g...

2019-06-04 11:26:47 82

原创 【剑指offer】顺时针打印矩阵

题目:输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字。例如:如果输入如下矩阵:则依次打出数字 1、2、3、4、12、13、14、5、11、16、15、6、10、9、8、7。自己的解法:void print_cube(const int n){ assert( n &gt; 0 ); int array[n][n]; // 用以保留数据 ...

2018-09-29 18:05:00 133

原创 剑指offer

1、赋值运算符函数2、实现Singleton模式3、二维数组中的查找4、替换空格5、从尾到头打印链表6、重建二叉树7、用两个栈实现队列8、旋转数组的最小数字9、斐波那契数列10、二进制中 1 的个数11、数值的整数次方12、打印 1 到最大的 n 位数13、在O(1)时间删除链表结点14、调整数组顺序使奇数位于偶数前面15、链表中倒数第K个结...

2018-09-17 21:29:33 118

原创 【剑指offer】二叉树的镜像

题目:请完成一个函数,输入一个二叉树,该函数输出它的镜像。二叉树结点的定义如下:struct binaryTreeNode{ int m_nValue; binaryTreeNode * m_pLeft; binaryTreeNode * m_pRight;};递归解法:void mirrorRecursively (bin...

2018-09-17 21:10:58 97

原创 work_note

1、环境配置问题2、code 

2018-09-06 18:22:18 124

原创 【剑指offer】树的子结构

题目:输入两棵二叉树 A 和 B,判断 B 是不是 A 的子结构。二叉树结点的定义如下:struct binaryTreeNode{ int m_nValue; binaryTreeNode * m_pLeft; binaryTreeNode * m_pRight;};bool doesTree1hasTree2( binary...

2018-08-10 16:42:14 93

原创 【剑指offer】合并两个排序的链表

题目:输入两个递增排序的链表,合并这两个链表并使新链表中的结点仍然是按照递增排序的。例如输入链表 1 和链表 2,则合并之后的升序链表如链表 3 所示。链表结点定义如下:struct listNode{ int m_nValue; listNode * m_pNext;};链表1:   【1】【3】【5】【7】链表2:   【2】【4】【6】【8】...

2018-08-10 15:13:42 89

原创 【剑指offer】反转单链表

题目:定义一个函数,输入一个链表的头结点,反转该链表并输出反转后链表的头结点。链表结点定义如下:struct listNode{ int m_nKey; listNode * m_pNext;};/* Function: reverseList Description: reverse the single list...

2018-08-10 10:06:22 129

原创 【剑指offer】链表中倒数第K个结点

题目:输入一个链表,输出该链表中倒数第k 个结点.为了符合大多数人的习惯,本题从1 开始计数,即链表的尾结点是倒数第1 个结点.例如一个链表有6 个结点,从头结点开始它们的值依次是1 、2、3、4、5 、6。这个个链表的倒数第3 个结点是值为4 的结点.链表结点定义如下:struct listNode{ int m_nValue; listNode * m...

2018-08-09 12:33:55 92

原创 【剑指offer】调整数组顺序使奇数位于偶数前面

题目:输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位予数组的后半部分。完成基本功能的解法:void ReorderOddEven( int pData[], const int length ){ if( NULL == pData || length &lt;= 0 ) return; int *p...

2018-08-06 16:22:08 81

原创 【剑指offer】在O(1)时间删除链表结点

题目:给定单向链表的头指针和一个结点指针,定义一个函数在O(1)时间删除该结点。链表结点与函数的定义如下:struct listNode{ int m_nValue; listNode * m_pNext;};void deleteNode( listNode ** pListHead, listNode * pToBeDeleted );void...

2018-08-06 14:54:33 82

原创 【剑指offer】打印1到最大的n位数

题目:输入数字n,按顺序打印出从1到最大的n位十进制数。比如输入3,则打印出1、2、3一直到最大的3位数即999。字符串模拟加法:bool increment( char * number ){ bool isOverflow = false; int nTakeOver = 0, i; int nLength = strlen( number ); ...

2018-08-06 14:12:09 115

原创 翻转二叉树

输入一个二叉树,输出其镜像(交换所有节点的左右子树)。   1                1 / \                / \2   3   =&gt;    3   2   /                \  4                4定义二叉树结点:struct NodeBinaryTree{ int data; Nod...

2018-08-01 11:22:32 619

原创 【剑指offer】数值的整数次方

题目:实现函数 double power( double base, int exponent ),求 base 的 exponent 次方。不得使用库函数,同时不需要考虑大数问题全面但不够高效的解法:bool g_InvalidInput = false; // 全局变量,指示函数入参是否合理const double EPS = 1e-6; // 判断double相等的辅助精度b...

2018-07-26 18:32:06 123

原创 【剑指offer】二进制中 1 的个数

题目:请实现一个函数,输入一个整数,输出该数二进制表示中 1 的个数。例如把 9 表示成二进制是 1001,有 2 位是 1 。因此如果输入 9 ,该函数输出 2 。常规解法:int numberOf1( int a ){ int result = 0; int flag = 1; while( 0 != flag ) { if( 0 ...

2018-07-25 17:30:53 105

原创 【剑指offer】斐波那契数列

题目一:写一个函数,输入 n ,求斐波那契(Fibonacci)数列的第 n 项。斐波那契数列的定义如下:long long fibonacci( int n ){ if( n &lt; 0 ) throw(" Invalid n "); long long result[2] = { 0, 1 }; if( n &lt; 2 ) // 前两个数字直...

2018-07-25 16:46:40 108

原创 【剑指offer】旋转数组的最小数字

题目:把一个数组最开始的若干个元素搬到数组的末尾, 我们称之数组的旋转。输入一个递增排序的数组的一个旋转, 输出旋转数组的最小元素。例如数组 { 3, 4, 5, 1, 2 } 为 { 1, 2, 3, 4, 5 } 的一个旋转,该数组的最小值为 1int minInOrder( int data[], index1, index2 ){ if( NULL == data || i...

2018-07-25 15:39:17 83

原创 【剑指offer】用两个栈实现队列

题目:用两个栈实现一个队列。队列的声明如下,请实现它的两个函数appendTail 和deleteHead,分别完成在队列尾部插入结点和在队列头部删除结点的功能。template &lt;typename T&gt; class CQueue{public: CQueue( void ); ~CQueue( void ); void appendTail( co...

2018-07-24 18:09:25 78

原创 【剑指offer】重建二叉树

题目:输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如:前序遍历序列{ 1, 2, 4, 7, 3, 5, 6, 8}和中序遍历序列{4, 7, 2, 1, 5, 3, 8,6},重建出下图所示的二叉树并输出它的头结点。二叉树结点的定义如下:struct BinaryTreeNode{ int m_nVal...

2018-07-24 16:26:00 95

原创 【剑指offer】从尾到头打印链表

题目:输入一个链表的头结点,从尾到头反过来打印出每个结点的值。方法一:利用栈结构先进后出的特点 void printListRever( listNode * pHead ) { stack&lt;listNode *&gt; nodes; listNode *pNode = pHead; while( NULL != pNode ) { ...

2018-07-24 13:45:12 89

原创 【剑指offer】替换空格

题目:请实现一个函数,把字符串中的每个空格替换成"%20",例如“We are happy.”,则输出“We%20are%20happy.”。/* string 内存应该足够长以存放替换后的字符串,否则会出现内存越界。 */void replaceBlank( char * string ){ if( NULL == string ) // 判断 string 入参是否...

2018-07-24 11:14:24 86

原创 【剑指offer】二维数组中的查找

题目:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。bool find( int * matrix[], int rows, int columns, int value ){ bool found = false; if( NULL != ma...

2018-07-23 11:20:56 87

原创 【剑指offer】实现Singleton模式

题目:设计一个类,我们只能生成该类的一个实例不好的解法一:只适用于单线程环境class Singleton1{public: static Singleton1 * Intance() { if( NULL == instance ) instance = new Singleton1(); return ins...

2018-07-20 19:07:39 124

原创 【剑指offer】赋值运算符函数

题目:如下为类型 CMyString 的声明,请为该类型添加赋值运算符函数class CMyString{public: CMyString( char * pData = NULL ); CMyString( const CMyString &amp; str ); ~CMyString( void );private: char * m_pData;...

2018-07-20 10:41:42 121

原创 输入一个n,然后在屏幕上打印出NxN 的矩阵!

/* Function: printCube Description: generate the Cube in array and print it Input: [array]: the array for store Cube's data ( enough to store the dat...

2018-07-12 19:18:45 2172

原创 线程池( 尚未整理 )

头文件:#ifndef __AOS_THREADPOOL_H__#define __AOS_THREADPOOL_H__typedef void (*aos_worker_thread_func)( void *arg, U32 ulTaskId );int aos_threadpool_alloc(aos_worker_thread_func f, void * arg);int...

2018-06-12 14:29:29 152

原创 红黑二叉树( 尚未整理 )

头文件:#ifndef __AOS_RBTREE_H__#define __AOS_RBTREE_H__typedef enum aos_rbcolor_t{ AOS_RBCOLOR_BLACK, AOS_RBCOLOR_RED} AOS_RBCOLOR_T;/** * The type of the node of the R/B Tree. */typede...

2018-06-12 14:24:22 189

原创 C语言的角落

C之非常用特性: https://blog.csdn.net/yang_yulei/article/details/34557625你不一定知道C语言的特性: https://blog.csdn.net/yang_yulei/article/details/46337583

2018-06-12 11:40:46 144

原创 停顿十秒钟,思考沉淀

如何提升你的能力,给年轻程序员的几条建议: http://tech.glowing.com/cn/advices-to-junior-developers/

2018-06-12 11:17:37 146

原创 shell 脚本编辑 crontab 任务

#!/bin/bashSCHED_FILE="/home/liuyg/study/crontab_sched_file"# check the sched file existif [ ! -f "${SCHED_FILE}" ]; then touch ${SCHED_FILE}fi# stop cronservice cron stop# replace cron...

2018-06-09 18:18:16 2113

原创 linux 下 mysql 数据库备份脚本示例

附录:        MySQL数据库备份的10个教程

2018-06-08 17:52:47 212

原创 Digit Counts

DescriptionCount the number of k's between 0 and n. k can be 0 - 9.Have you met this question in a real interview?  YesExampleif n = 12, k = 1 in[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]we have FIVE...

2018-05-31 09:40:18 997 1

空空如也

空空如也

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

TA关注的人

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