CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

500分求算法:决不失言,欢迎大家来看看

楼主cjy11()2002-12-17 10:37:06 在 VC/MFC / 基础类 提问

求最优路径的问题:  
  1.             A     .               .B         A和B没有关系;  
  2.             A     ._________B       A和B有关系(因为线段相连);注意AB是线段不是直线  
   
  3.                               |C  
                        A_____|_____B  
                                    |K  
                                    D               K和相临点A,B,C,D点都有关系,A只和相临点K有关系,  
                                                    A和B的关系这时已经不存在关系;K点将AB断链;也将CD断链  
  现在的问题是:  
  1.在一个图层中有N条已知线段,求每一条线段和其他线段的交点(如K点);  
  2.标志出每一个点和其相临点(注意1中AB没有关系,2中AB有关系,3中AB没有关系,因为不是相另点)  
  3.例:A(K),K(A,B,C,D),C(K);  
  4.如果线段的数目很多,那种方式是最佳算法??最简单的算法是什么?  
  5.需要注意线段有重复交点的问题(如'米'字型交叉点,交点重复),如何处理?  
  各位老兄,先谢过了,500分求算法(最好有相应的代码)!  
  好好学习,互相帮助!  
  问题点数:100、回复次数:5Top

1 楼zhang_zhibin(blackcat)回复于 2002-12-17 11:38:48 得分 20

我有一段程序是求两个点之间最短路径的,不知道适用不适用于你的问题,QQ:41880902.Top

2 楼cbc(逍遥子)回复于 2002-12-17 11:41:56 得分 10

upTop

3 楼cjy11()回复于 2002-12-17 13:39:36 得分 0

楼上的兄弟:能否给我发一下,我的邮箱是yueyanglou@sina.com  
  因为公司规定不能上QQ,不知道晚上你还在QQ上吗?Top

4 楼Aizz(Nova)回复于 2002-12-17 16:23:36 得分 70

楼主的问题我理解的不是很透彻:  
  1、线段间是不是相连的,即线段的端点之间有没有关系?  
  2、各线段的交点算不算此图上的点,能不能构成一通路?  
   
    假设用如下的结构存储图的每个端点:  
  struct   link         //每个端点的数据  
  {  
      int   distance;     //两点间的长度  
      struct   link   *next;     //相连的下一端点  
  };      
   
  struct   link   *Node[n];     //n为图的端点数,数组中每个元素都是一个端点  
  以(3)中的图为例,我们构造一个数组(假设KA=1,KC=3,KB=2,KD=4):  
  (Node[0]-Node[4]分别保存A、B、C、D、K相邻最近点的地址)  
  Node[0](点A):K  
  Node[1](点B):K  
  Node[2}(点C):K  
  Node[3](点D):K  
  Node[4](点K):A->B->C->D(顺序是根据距离的远近来排的)  
  找最短路径可以用回溯来找:  
  假设要找A到D点的最短距离,从Node中取A,得知A最近的点是K;从Node中取K,得知K最近的点是B(除A外);取B,发现B无法到达D,则回溯到K;K除A,B外最近的是C,取C,又无法到达,回溯;K除A,B,C外最近的是D,找到路径。注意,这个路径并不一定是最短的,要是最短或许还得加上一个权(没想清楚,猜测),这个权和距离的积可以表示这两点之间的实际“距离”(我也不知道用什么表述,:(   )。  
   
  献丑,引玉之砖,呵呵。Top

5 楼cjy11()回复于 2002-12-18 11:21:34 得分 0

楼上的各位兄弟:算法本人已经基本解决,支持谢谢Top

相关问题

  • 扫描算法,欢迎lawrence444
  • 寻觅算法,欢迎交流
  • 欢迎讨论STL中的算法!
  • 算法艺术群(12135868)欢迎加入
  • 急,急!1000分请教NOVELL问题,决不失言!
  • 绝对给分,只要解决了决不失言!
  • 梅花雨来领分(答应的决不失言)
  • 高手请进,算法问题,欢迎讨论
  • PB中的一个算法问题,欢迎讨论
  • 请教:4张扑克算24点的算法----欢迎参与!!

关键词

  • 算法
  • 线段
  • 端点
  • knode
  • 路径
  • 交点
  • 关系
  • 假设
  • 相连
  • ab

得分解答快速导航

  • 帖主:cjy11
  • zhang_zhibin
  • cbc
  • Aizz

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo