资源简介

算法分析与设计的贪心算法实现会议安排。1.贪心算法解决问题的策略是只考虑眼前情况。2.由题目可知会议需要按时举行,并且会场使用个数最少,即尽可能的提高会场的利用率。3.策略为:将会议按开始时间顺序进行排序,同时记录所使用的会场的结束时间,如果会议的开始时间大于或等于使用会场最早结束时间,即此时有会场空闲,可安排会议。如果会场均有会议,则需要安排新会场。

资源截图

代码片段和文件信息

#include
#include 
#include 

typedef struct  
{
   int num;          //会议的编号
   int start;        //开始时间
   int over;         //结束时间
   int place_num;    //所使用的会场号
}meeting;
meeting meet[100];

typedef struct
{
   int m_num;      //会场所进行的会议下标
   int m_over;     //会场进行会议的结束时间
}hall;
hall h[100];

int partition(meeting meet[]int pint r)
{  meeting tmp;
   int i=p;
   int j=r+1;
   meeting x=meet[p];
  //将  //将>x的元素交换到右边区域
   while(true)
   {
      while(meet[++i].start运算
      while(meet[--j].start>x.start);     //j元素大于基准元素x
      if(i>=j) break;    
      tmp=meet[i];//交换
      meet[i]=meet[j];
      meet[j]=tmp;
   }
  meet[p]=meet[j];
  meet[j]=x;
  return j;            

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2011-11-13 19:25  贪心算法 会议安排\
     文件        2769  2011-10-12 21:58  贪心算法 会议安排\text_1.cpp
     文件      122880  2011-11-13 19:24  贪心算法 会议安排\作业—会议安排.ppt

评论

共有 条评论