自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Not The End

不积跬步,无以至千里

  • 博客(10)
  • 资源 (2)
  • 收藏
  • 关注

原创 二维数组回形遍历

如图所示,打印遍历后的结果。策略:由外到内,一圈圈的打印,直到没有元素输出。#include using namespace std;int print_array_round(int **a, int row_start,int row_end, int col_start, int col_end) { int count = 0; //本次打印的元素个数 // 右

2013-06-05 13:13:37 2463

原创 一道特殊要求的字符串比较笔试题

//设计一个strmncmp函数,对比普通的strcmp,原则在于,当字符串中含有数字时,以数字大小为标准,对于其中只有一个字符串为数字的情况,//仍然使用原来的原则,举例说strmncmp的判定结果,”abc”//一般的strcmp的判定结果:”abc”//要求:请给出完整代码,在达到目标的情况下尽量搞笑,简洁。int strmncmp(char* s1, char* s2)

2011-11-11 11:45:06 596

原创 2个二叉树A、B,树的每个节点上都有一个整数值。如何判断A与B是否其中一个是另一个的子树?

struct TreeNode { int key; TreeNode *left; TreeNode *right;};bool isSubTree(TreeNode *A, TreeNode *B){ if(!A&&!B) return true; if(!A||!B) return false; if(A->key == B->key){ return isSubTre

2011-11-11 09:24:20 466

原创 有一堆硬币,面值分别为2、3、5、7,判断是否能平均分成两堆,如果能分,该怎么分?

很笨的穷举法//coins:2,3,5,7的个数,partition:分法bool partitionCoin(int coins[],int partition[]){ int totalMoney = 2*coins[0]+3*coins[1]+5*coins[2]+7*coins[3]; if(totalMoney%2) return false; int eachMoney =

2011-11-09 10:49:01 784

原创 有1,2,3,...,n,n<=9,这n个数全排列,从小到大排好,计算第k个数是什么

从高位到低位依次选择int findKthNumber(int n,long k){ if(n9||k<1) return -1; if(n==1){ if(k==1){ cout<<"1"<<endl; return 0; }else{ return -1; } } long *counts = new long[n]; bool *select

2011-11-08 14:59:06 1270

原创 从一个字符串中删除另一个字符串中出现的字符

int deleteChars(char *first, char *second){ if(!first||!second) return -1; bool hashTable[256]; memset(hashTable,0,sizeof(hashTable)*sizeof(bool)); for (int i=0;i<strlen(second);++i) { hash

2011-11-08 14:02:31 1087

原创 字符串移动(字符串为*号和26个字母的任意组合,把*号都移动到最左侧,把字母移到最右侧并保持相对顺序不变),要求时间和空间复杂度最小

char* moveStar(char *s){ if(!s) return NULL; int len = strlen(s); int starCount = 0; for(int i=len-1;i>=0;--i){ if(s[i]=='*'){ ++starCount; }else if(starCount>0){ s[i+starCount] = s[i];

2011-10-26 19:41:23 1000 1

原创 链表相邻元素翻转,如a->b->c->d->e->f-g,翻转后变为:b->a->d->c->f->e->g

常见的三指针方法struct node { int data; node * next;};node* inverseList(node *head){ if(head==NULL||head->next==NULL) return head; node *pre = NULL; node *cur = head; node *next =NULL; while(cur&

2011-10-26 19:39:34 1215

原创 删除字符串开始及末尾的空白符,并且把数组中间的多个空格(如果有)符转化为1个。

int deleteBlank(char* s){ if(s==NULL) return -1; int len = strlen(s); //删除字符串结尾的空白符 int i = len; while(s[--i]==' '); s[i+1] = '\0'; len = i; //删除字符串开始以及中间的空白符 i=0; int offset = 0; while(

2011-10-26 19:34:43 1182

原创 删除Java源代码中的注释

//类似于有限状态机import java.io.FileReader;import java.io.IOException;public class RemoveComment {//遍历字符串,记录闭合状态 public static String removeComment(String src){ StringBuffer sb = new StringBuffer()

2011-10-20 16:10:01 945

wrox Professional Ruby on Rails_code.zip

wrox Professional Ruby on Rails的原代码,在wrox网站下的

2009-09-29

空空如也

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

TA关注的人

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