摘要: #includeusing namespace std;//定义一个结点类型typedef struct node{int data;node* next;}queuenode;//定义队列的first,reartypedef struct linkqueue{queuenode* first,*rear;}queue;//队列入队queue *insert(queue *HQ,int x){queuenode *s=new queuenode[sizeof(queuenode)];s->data=x;s->next=NULL;if(HQ->rear==NULL){HQ-&g 阅读全文
posted @ 2013-10-06 21:13 小菜美妞成长中 阅读(362) 评论(0) 推荐(0) 编辑
摘要: 分析:这又是一道考察发散思维的很有意思的题目。当我们习以为常的东西被限制使用的时候,如何突破常规去思考,就是解决这个问题的关键所在。看到的这个题目,我的第一反应是傻眼了,四则运算都不能用,那还能用什么啊?可是问题总是要解决的,只能打开思路去思考各种可能性。首先我们可以分析人们是如何做十进制的加法的,比如是如何得出5+17=22这个结果的。实际上,我们可以分成三步的:第一步只做各位相加不进位,此时相加的结果是12(个位数5和7相加不要进位是2,十位数0和1相加结果是1);第二步做进位,5+7中有进位,进位的值是10;第三步把前面两个结果加起来,12+10的结果是22,刚好5+17=22。前面我们 阅读全文
posted @ 2013-10-06 20:50 小菜美妞成长中 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 一、冒泡排序#includeusing namespace std;void bubble_sort(int a[],int len){ int i,j,temp; int exchange=0; for(i=0;iusing namespace std;void insert_sort(int a[],int n){ int i=0,j=0,temp=0; for(i=1;i=0;j--) a[j+1]=a[j]; a[j+1]=temp; }}int main(){ int a[]={7,3,5,8,9}; insert_sort(a,5); for(int i=0;iusing name 阅读全文
posted @ 2013-10-06 16:55 小菜美妞成长中 阅读(261) 评论(0) 推荐(0) 编辑
摘要: #include #include using namespace std;char *deletechar(char*inputstr,char *outputstr){ char *deststr=outputstr; bool table[26]={false}; int k=0; for (int i=0;i<strlen(inputstr);i++) { char c=inputstr[i]; if (table[c-'a']==false) { outputstr[k++]=c; table[c-'a']=true; } } outputstr 阅读全文
posted @ 2013-10-06 16:51 小菜美妞成长中 阅读(204) 评论(0) 推荐(0) 编辑
摘要: // 建立一个带附加头结点的单链表/测长/打印#includeusing namespace std;typedef struct node{int data;node *next;}LinkList;LinkList *creat(){LinkList *head,*p,*s;int x;head=new LinkList[sizeof(LinkList)];head->data=0;p=head;while(1){cout>x;if(x==0) break;s=new LinkList[sizeof(LinkList)];s->data=x;p->next=s;p= 阅读全文
posted @ 2013-10-06 16:43 小菜美妞成长中 阅读(366) 评论(0) 推荐(0) 编辑