考试网 >> IT认证 >> 水平 >> 软件指导 >> 程序员数据结构笔记(三)

程序员数据结构笔记(三)

发布时间:2006-06-28 04:46     点击:
分页:上一页  1 2 3 4 5 [6] 7 8 9 10  下一页

   { if(temp_w+w[e[i]]<=TW)

     temp_v=temp_v+v[e[v]];

  }

分治法:

  思想:把规模为n的问题进行分解,分解成几个小规模的问题.然后在得到小规模问题的解的基础上,通过某种方法组合成该问题的解.

  例:数轴上有n个点x[n],求距离最小的两个点.

  分:任取一点,可以把x[i]这n个点分成两个部分

  小的部分 分点 大的部分

    |_._.__.__.____._|__._._.__._.__._______._.__._._.__.___._____._|

  治:解=min{小的部分的距离最小值;

   大的部分的距离最小值;

   大的部分最小点和小的部分最大点这两点之差;}

程序员考试下午试题(模拟)

一、把一个字符串插入到另一个字符串的某个位置(指元素个数)之后

  char *insert(char *s,char *t,int position)

  { int i;

   char *target;

   if(position>strlen(t)) printf("error");

   else

   { for (i=0;i< (1) ;i++)

    { if (i<position)

     target[i]=s[i];

     else

     { if(i< (2) )

      target[i]=t[i];

      else (3) ;

     }

    }

   }

   return garget;

  }

二、辗转相除法求两个正整数的最大公约数

  int f(int a,int b)

  { if (a==b) (4) ;

   else

   { if (a>b) return f(a-b,b);

    else (5) ;

   }

  }

三、求一个链表的所有元素的平均值

  typedef struct { int num;

   float ave;

  }Back;

  typedef struct node{ float data;

   struct node *next;

  } Node;

  Back *aveage(Node *head)

  { Back *p,*q;

   p=(Back *)malloc(sizeof(Back));

   if (head==NULL)
分页:上一页  1 2 3 4 5 [6] 7 8 9 10  下一页
版权申明:未经书面授权请勿转载本站信息!!作品版权归所属媒体与作者所有!!
发表评论: 匿名发表 用户名: 查看评论
您将承担一切因您的行为、言论而直接或间接导致的民事或刑事法律责任
留言板管理人员有权保留或删除其管辖留言中的任意内容
本站提醒:不要进行人身攻击。谢谢配合。
在本站搜索相关信息
2003-2005 Ksw123.com All Rights Reserved. - TOP
Copyright © 2006 Ksw123.com. All rights reserved.中国考题网 版权所有