- 博客(154)
- 资源 (2)
- 收藏
- 关注
转载 github设置添加SSH
很多朋友在用github管理项目的时候,都是直接使用https url克隆到本地,当然也有有些人使用 SSH url 克隆到本地。然而,为什么绝大多数人会使用https url克隆呢?这是因为,使用https url克隆对初学者来说会比较方便,复制https url 然后到 git Bash 里面直接用clone命令克隆到本地就好了。而使用 SSH url 克隆却需要在克隆之前先配置和添加
2016-08-12 22:46:35
612
转载 大数相乘
这个题很坑,有几种情况要测试1.如果有一个乘数为空,则返回-12,如果结果为0,返回的字符串不能为空,要为“0”;#include "oj.h"/******************************************************* Prototype : multiply Description : 两个任意长度的长整数相乘, 输出结果 I
2015-05-04 16:21:07
932
原创 矩阵相乘2
#include "oj.h"#include "stdlib.h"/*功能: 矩阵相乘 输入: MatrixA,MatrixB 输出: MatrixC返回: 0 */int matrix(int **MatrixA, int **MatrixB, int **MatrixC, int N){ if(MatrixA == NULL || Matri
2015-04-27 22:08:38
1211
原创 查找同构数的数量
#include "OJ.h"/*功能:找出1至n之间同构数的个数输入: int n:查找1至n之间的全部同构数返回: int:1至n之间同构数的个数*/int SearchSameConstructNum(int n){ /*在这里实现功能*/int count=0,i; for (i=n;i>0;i--) { n=i; long int s
2015-04-27 22:08:31
1706
原创 N皇后
#include "OJ.h"/*功能: 求解放置8皇后方案的个数。输入: 无返回: int:放置8皇后方案的个数*/ int x[100];//判断第k个皇后能否放在第x[k]列 bool Place(int k){ int i = 1; while( i < k){ if( x[i]==x[k] || (x[i]-x[k
2015-04-27 22:06:19
674
原创 IP地址判断有效性
#include "IPAddressValid.h"bool isIPAddressValid(const char* pszIPAddr){ // 请在此处实现 if((!pszIPAddr)||*pszIPAddr == '\0') //字符串判空 return false; int pszLen = 0; while(pszIPAddr[pszLen] != '\
2015-04-27 22:04:03
791
原创 【中级】报文转换
#include #include "OJ.h"#include using namespace std;/*功能: 将给定的报文按规则转换成另一个报文后输出。 转换规则如下: 报文中如果出现0x7E,转义成为2个字节0x7D 0x5E,如果出现0x7D,转义成为2个字节0x7D 0x5D。最后在报文头尾各加上一个0x7E定界。 示例(每个字节以十六
2015-04-27 22:03:52
3972
原创 【中级】报文转换
#include #include "OJ.h"#include using namespace std;/*功能: 将给定的报文按规则转换成另一个报文后输出。 转换规则如下: 报文中如果出现0x7E,转义成为2个字节0x7D 0x5E,如果出现0x7D,转义成为2个字节0x7D 0x5D。最后在报文头尾各加上一个0x7E定界。 示例(每个字节以十六
2015-04-27 22:02:57
1407
原创 【中级】双链表基本操作
/****************************************************************************** Copyright (C), 2001-2011, Huawei Tech. Co., Ltd. ******************************************************************
2015-04-27 21:59:05
725
转载 将两个有序链表合并成一个有序链表
问题定义: 写一个函数SortedMerge函数,该函数有两个参数,都是递增的链表,函数的功能就是合并这两个递增的链表为一个递增的链表,SortedMerge的返回值是新的链表。新链表由前两个链表按元素递增顺序合并而成,也就是说它不会创建新的元素。比如:这里有两个链表,分别是list1: 5->10->15list2: 2->3->20Sort
2015-03-26 16:17:00
1446
原创 Word2010页眉有条横线怎么删掉
工具/原料word 2010方法/步骤1首先,我们打开word,我们看到我们的页眉 文字下方总有一根默认的横线,这是word的默认,总是有的,如图。2如果我们要删除的话,我双击页眉,进入页眉的编辑状态,然后选择页眉里的所有文字,选择word的选项卡的开始——》消除
2015-03-12 19:53:12
2596
原创 Matlab 中常用的直线与点形表示属性
Matlab 中常用的直线与点形表示属性一、Matlab绘图中用到的直线属性包括:(1)LineStyle:线形(2)LineWidth:线宽(3)Color:颜色(4)MarkerType:标记点的形状(5)MarkerSize:标记点的大小(6)MarkerFaceColor:标记点内部的填充颜色(7)Marker
2014-11-16 13:22:04
1213
转载 程序员编程艺术:第二章、字符串是否包含及匹配/查找/转换/拷贝问题
程序员编程艺术:第二章、字符串是否包含及匹配/查找/转换/拷贝问题作者:July,yansha。时间:二零一一年四月二十三日。致谢:老梦,nossiac,Hession,Oliver,luuillu,雨翔,啊菜,及微软100题实现小组所有成员。微博:http://weibo.com/julyweibo。出处:http://blog.youkuaiyun.com/v_JU
2014-11-05 12:06:41
768
转载 装饰器模式
1.认识装饰器模式 装饰模式能够实现动态的为对象添加功能,是从一个对象外部来给对象添加功能。通常给对象添加功能,要么直接修改对象添加相应的功能,要么派生对应的子类来扩展,抑或是使用对象组合的方式。显然,直接修改对应的类这种方式并不可取。在面向对象的设计中,而我们也应该尽量使用对象组合,而不是对象继承来扩展和复用功能。装饰器模式就是基于对象组合的方式,可以很灵活的给对象添加所需要的功能。装
2014-11-02 14:46:37
651
原创 二叉树后序遍历(非递归)
二叉树后序遍历(非递归)二叉树的递归遍历算法就不用说了;在非递归算法中,后序遍历难度大,很多书上只给出思想或者几段无法直接调试的代码,甚至有些书上是错的,当时我在研究的过程中,就是按着书上错误的代码绕了好半天,几预抓狂。好在最终摸索出来了,不禁感叹很多出书人的水平真是...... 这里将直接可以在编译器里调试的代码贴出来(在DEV-C++编译器中编译通过)
2014-10-24 20:36:54
870
转载 求两个链表的并集和交集
给定2个链表,求这2个链表的并集(链表)和交集(链表)。不要求并集(链表)和交集(链表)中的元素有序。如,输入:List1: 10->15->4->20List2: 8->4->2->10输出:交集(链表):4->10并集(链表):2->8->20->4->15->10方法一(简单、直观的方法): 下面是得到2个链表的并
2014-10-22 15:26:51
5359
原创 小根堆
小根堆转自http://blog.youkuaiyun.com/ganggexiongqi/article/details/7449970如果有一个关键字的集合K={k0,k1,k2, ..., kn-1}, 把所有元素按完全二叉树的顺序存储方式存放在一个一维数组中,并且满足ki 则称这个集合为小根堆。小根堆的创建:1. 复制堆数组2. 找到最初的调整位置,即最后一
2014-10-22 14:45:22
1905
转载 平衡二叉树
平衡二叉树(Balanced binary tree)是由阿德尔森-维尔斯和兰迪斯(Adelson-Velskii and Landis)于1962年首先提出的,所以又称为AVL树。定义:平衡二叉树或为空树,或为如下性质的二叉排序树: (1)左右子树深度之差的绝对值不超过1; (2)左右子树仍然为平衡二叉树. 平衡因子BF=左子树深度-右子树深度.
2014-10-22 14:24:38
649
转载 函数可重入性及编写规范
一、可重入函数1)什么是可重入性?可重入(reentrant)函数可以由多于一个任务并发使用,而不必担心数据错误。相反, 不可重入(non-reentrant)函数不能由超过一个任务所共享,除非能确保函数的互斥(或者使用信号量,或者在代码的关键部分禁用中断)。可重入函数可以在任意时刻被中断,稍后再继续运行,不会丢失数据。可重入函数要么使用本地变量,要么在使用全局变量时保护自己的数据。
2014-10-21 17:00:18
558
转载 ARM寄存器的7种工作模式
ARM寄存器的7种工作模式CPSR[5:0]10000 user10001 FIQ10010 IRQ10011 SVC10111 中止11011 未定义11111 系统用这两个指令读写CPRS的值msrmrs如:MRS R1,CPSR ; 将CPSR状态寄存器读取,保存到R1中MRS R2,SPSR ; 将SP
2014-10-21 17:00:10
1186
转载 关于优先级反转
在多进程、多线程并发的环境里,从概念上看,有多个进程或者多个线程在同时执行,具体到单个CPU级别,实际上任何时刻只能有一个进程或者线程处于执行状态;因此OS需要决定哪个进程执行,哪些进程等待,也就是进程的调度。一、调度的目标1、首先要区分程序使用CPU的三种模式:IO密集型、计算密集型和平衡型。对于IO密集型程序来说,响应时间非常重要;对于CPU密集型来说,CPU的周转时间就比较重要;对于
2014-10-17 16:27:46
736
转载 寻找一个字符串中最长的重复子串
//寻找一个字符串中最长的重复子串//思路://1. 用字符串指针数组保存用户输入的字符串的所有后缀字符串;//2. 将后缀字符串集合进行排序;//3. 比较相邻字符串的公共子串长度,找到长度最大值,保存相应字符串即为所求#include #include #include #define MAXCHAR 5000 //最长处理5000个字符
2014-10-17 11:44:49
1148
转载 后缀数组是处理字符串的有力工具
后缀数组是处理字符串的有力工具。后缀数组是后缀树的一个非常精巧的替代品,它比后缀树容易编程实现,能够实现后缀树的很多功能而时间复杂度也并不逊色,而且它比后缀树所占用的内存空间小很多。子串:字符串S的子串r[i..j],i后缀:后缀是指从某个位置i开始到整个串末尾结束的一个特殊子串。字符串 s 的从第i个字符开始的后缀表示为Suffix(i), 也就是Suffix(i)=r[i..l
2014-10-17 11:21:43
653
转载 求一个字符串中连续出现的次数最多的子串
这个题目不是编程珠玑上看到的,但是解法用到的数据结构在编程珠玑上有讲到,先归类到这里。求一个字符串中连续出现的次数最多的子串。例如字符串“abababc”,最多连续出现的为ab,连续出现三次。要和求一个字符串中的最长重复子串区分开来,还是上面的字符串,那么最长的重复子串为abab。两个题目的解法有些类似,都用到了后缀数组这个数据结构。求一个字符串中连续出现的次数最多的子串,首先生成后缀数组
2014-10-17 10:37:56
908
转载 C/C++常见面试题
一、常见字符串1. 写出在母串中查找子串出现次数的代码。[cpp] view plaincopyint count(char* str,char* substr) { char* str1; char* str2; int num = 0; while(*str!='\0') { str1 = str;
2014-10-16 21:33:47
936
转载 静态局部变量
静态局部变量在局部变量前加上“static”关键字,就成了静态局部变量。静态局部变量存放在内存的全局数据区。函数结束时,静态局部变量不会消失,每次该函数调用 时,也不会为其重新分配空间。它始终驻留在全局数据区,直到程序运行结束。静态局部变量的初始化与全局变量类似.如果不为其显式初始化,则C++自动为其 初始化为0。静态局部变量与全局变量共享全局数据区,但静态局部变量只在定义它的函数中可
2014-10-16 10:33:09
2007
转载 多态类中的虚函数表是Compile-Time,还是Run-Time时建立的
这可是一道很经典的笔试面试考试问题,回答起来也是五花八门,各有各的说法。比如,看到过类似下面这段话的回答:虚函数它虚就虚在所谓“推迟联编”或者“动态联编”上,一个类函数的调用并不是在编译时刻被确定的,而是在运行时刻被确定的。由于编写代码的时候并不能确定被调用的是基类的函数还是哪个派生类的函数,所以被成为“虚”函数。 看起来有道理的一段话,问题很明显。稍微说明:虚
2014-10-15 19:59:01
1449
转载 大规模数据处理Bloom Filter C++代码实现
Bloom Filter是由Bloom在1970年提出的一种多哈希函数映射的快速查找算法。通常应用在一些需要快速判断某个元素是否属于集合,但是并不严格要求100%正确的场合。一. 实例 为了说明Bloom Filter存在的重要意义,举一个实例: 假设要你写一个网络蜘蛛(web crawler)。由于网络间的链接错综复杂,蜘蛛在网络间爬行很可能会形成“环”。为了避免形成“
2014-10-14 15:57:05
797
转载 海量数据处理程序设计技巧(附C++代码)
求解问题如下:在本地磁盘里面有file1和file2两个文件,每一个文件包含500万条随机整数(可以重复),最大不超过2147483648也就是一个int表示范围。要求写程序将两个文件中都含有的整数输出到一个新文件中。要求:1.程序的运行时间不超过5秒钟。2.没有内存泄漏。3.代码规范,能要考虑到出错情况。4.代码具有高度可重用性及可扩展性,以后将要在该作业基础
2014-10-14 15:56:00
768
转载 C++ 多线程编程实例
从网上搜集来的非常基础的C++多线程实例,刚入门的可以看看,希望能有所帮助。Cpp代码 //这是2个线程模拟卖火车票的小程序 #include #include DWORD WINAPI Fun1Proc(LPVOID lpParameter);//thread data DWORD WINAPI Fun2Proc(LPVOID lp
2014-10-14 15:41:59
1788
原创 int,int32_t,int64_t和struct内存对齐
这些事跨平台编程导致的;一、数据类型特别是int相关的类型在不同位数机器的平台下长度不同。C99标准并不规定具体数据类型的长度大小,只规定级别。作下比较:16位平台char 1个字节8位short 2个字节16位int 2个字节16位long 4个字节32位指针 2个字节32位平台
2014-10-13 22:12:32
2592
转载 malloc函数详解
一、原型:extern void *malloc(unsigned int num_bytes);头文件:#include 或 #include (注意:alloc.h 与 malloc.h 的内容是完全一致的。)功能:分配长度为num_bytes字节的内存块说明:如果分配成功则返回指向被分配内存的指针,否则返回空指针NULL。当内存不再使用时,应使用free(
2014-10-13 22:03:20
582
转载 进程与线程的区别联系
本文主要由http://289972458.iteye.com/blog/1325189整理而来一。什么是进程 进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位。 线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。 系统资源:线程自己基本
2014-10-12 18:37:54
586
原创 浙江大华2012笔试+解析
一、程序编写题1.函数checkstr判断一个字符串是不是对称的,如:“abccba”是对称的,"abccbaa"则不是对称的。函数声明如下,其中msg为输入的字符串,对称返回0,不对称返回-1,请实现该函数。int checkstr(const char *msg);答:int checkstr(const char *msg) { i
2014-10-11 13:07:47
1045
原创 给出一个单向链表的头指针,输出该链表中倒数第K个节点的指针
给出一个单向链表的头指针,输出该链表中倒数第K个节点的指针,链表的倒数第0个节点为链表的尾节点(尾节点的next成员为NULL) NODE* findnode(NODE *head,unsigned int k); 思路:首先求出单向链表的长度为Len,然后从链表头指针开始遍历,一直遍历Len-1-K次就可以找到倒数第K个节点指针。 代码实现如下:
2014-10-11 13:00:48
1870
原创 strcpy(), memcpy(), memmove(), memset()原型及应用
一、strcpy()实现, 字符串拷贝.char *strcpy(char *strDest, const char *strSrc){ assert((strDest!=NULL) && (strSrc !=NULL)); char *address = strDest; while( (*strDest++ = * strSrc++) != '\
2014-10-10 13:00:55
790
原创 strcpy(d,s)的溢出问题
//2014-10-10 //strcpy溢出问题 //函数形参和局部变量是保存在栈中的,而栈是从高地址向低地址扩展的。#include#includemain(){//char s[]="123456789",d[]="123";// char d[]="123", s[]="123456789";// char d[]="123";char
2014-10-10 12:44:42
876
转载 最长递增和递减子序列详解(longest increasing subsequence)
对于动态规划问题,往往存在递推解决方法,这个问题也不例外。要求长度为i的序列的Ai{a1,a2,……,ai}最长递增子序列,需要先求出序列Ai-1{a1,a2,……,ai-1}中以各元素(a1,a2,……,ai-1)作为最大元素的最长递增序列,然后把所有这些递增序列与ai比较,如果某个长度为m序列的末尾元素aj(j<i)比ai要小,则将元素ai加入这个递增子序列,得到一个新的长度为m+1的新序列,
2014-10-09 21:45:37
3676
转载 最长递增子序列
问题给定一个长度为N的数组,找出一个最长的单调自增子序列(不一定连续,但是顺序不能乱)。例如:给定一个长度为6的数组A{5, 6, 7, 1, 2, 8},则其最长的单调递增子序列为{5,6,7,8},长度为4.解法1:最长公共子序列法这个问题可以转换为最长公共子序列问题。如例子中的数组A{5,6, 7, 1, 2, 8},则我们排序该数组得到数组A‘{1, 2
2014-10-09 21:41:50
507
转载 求数组中最长递增子序列的长度
问题:给定一个长度为N的数组,找出一个最长的单调自增子序列(不一定连续),如序列 1,-1,2,-3,4,-5,6,-7的最长递增子序列长度为4(1,2,4,6)方法一:最笨算法,复杂度为O(n*n),设一个辅助数组用来记录以对应元素结尾的最大递增子序列的长度(即lis[i]表示以array[i]结尾的最大递增子序列长度为lis[i]),从头到尾扫一遍原数组,对于每个元素
2014-10-09 20:43:49
1292
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人