社区
C#
帖子详情
请教一个数据结构的简单问题。
康斯坦汀
2011-10-31 02:48:15
假设一个矩形的四个顶点是四个对象,如何做到,从一个顶点出发遍历一遍各个顶点?不同方向的(比如顺时针
和拟时针)这是链表问题么?如何设计一个顶点的属性?
就是一个顶点最小存储什么对象可以从不同角度遍历? 比如一个节点对象存储向右和向左的两个关联对象的信息?
然后传递到下一个对象如此遍历?
如果不是矩形而是多边形怎么办?
...全文
143
6
打赏
收藏
请教一个数据结构的简单问题。
假设一个矩形的四个顶点是四个对象,如何做到,从一个顶点出发遍历一遍各个顶点?不同方向的(比如顺时针 和拟时针)这是链表问题么?如何设计一个顶点的属性? 就是一个顶点最小存储什么对象可以从不同角度遍历? 比如一个节点对象存储向右和向左的两个关联对象的信息? 然后传递到下一个对象如此遍历? 如果不是矩形而是多边形怎么办?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xiaoyu821120
2011-10-31
打赏
举报
回复
这种问题,看下数据结构,《图论》,就知道了。如果没有记错,一共有两种。一种是稀疏矩阵,一种是链表。遍历就是bfs或者dfs。
康斯坦汀
2011-10-31
打赏
举报
回复
更正:如何从一个元件出发
康斯坦汀
2011-10-31
打赏
举报
回复
[Quote=引用 1 楼 sdl2005lyx 的回复:]
感觉这个问题有点怪怪的!楼主想做图形系统?还是。。。。
对于图形系统,矩形不会存4个顶点,存左上和右下两个点就够了!
多边形:存List<Point>,Draw是,序号n与n+1之间的画直线。。。
[/Quote]
确实是跟图形系统有关,描述的可能不是很清楚,只是以矩形为例子,
换种描述方法:
比如 一个图形系统,可以考虑成类似Visio,有很多元件,元件和元件之间
用连接线连接,一个元件可能跟多个元件连接,如果从一个元件出发,遍历所有跟它关联的
元件,要实现这种遍历,元件的属性应该定义什么?
刚看了些数据结构方面的东西,感觉数据结构中的“图”,貌似是解决该问题的,只是这块儿不熟。
欢迎大家继续讨论。。。
mikeowenlibo
2011-10-31
打赏
举报
回复
不同的方向可以理解为不同的排序方法,首先必须确定对象比较的含义,,比如说顶点,用2个坐标X,Y来描述.
顺时针排
int Compare(Object obj1,Object obj2){
if(obj1.x<obj2.x){return -1;}
else if(obj1.x>obj2.x){return 1;}
else if(obj1.x=obj2.x){
if(obj1.y<obj2.y){return -1;}else{return 1;}
}
}
逆时针
int Compare(Object obj1,Object obj2){
if(obj1.x<obj2.x){return 1;}
else if(obj1.x>obj2.x){return -1;}
else if(obj1.x=obj2.x){
if(obj1.y<obj2.y){return 1;}else{return -1;}
}
}
xiaoyu821120
2011-10-31
打赏
举报
回复
我想顶点属性不外乎,x,y坐标,最多加个编号,还有你说的顺时针,逆时针,相邻顶点。这是一种链式的数据结构。
简单点也可以就用个数组,数组下标就为编号,只需要保留x,y坐标就可以了。
sdl2005lyx
2011-10-31
打赏
举报
回复
感觉这个问题有点怪怪的!楼主想做图形系统?还是。。。。
对于图形系统,矩形不会存4个顶点,存左上和右下两个点就够了!
多边形:存List<Point>,Draw是,序号n与n+1之间的画直线。。。
十万字全网最全
数据结构
代码
本文代码实现基本按照《
数据结构
》课本目录顺序,外加大量的复杂算法实现,一篇文章足够。能换你
一个
收藏了吧?
数据结构
学习心得体会
时间转眼即逝,一转眼一学期的
数据结构
课就已经快要结束了,我对第一节课的时候老师向我们介绍云班课时的场景还历历在目,老师兴致勃勃的介绍着
数据结构
课的作用,重要性。老师每节课都充满活力让我们每节课都...
十万字
数据结构
笔记
上次发操作系统笔记,很快浏览上万,这次
数据结构
比上次硬核的多哦,同样的会发超硬核代码,关注吧。
数据结构
和算法是人工智能的基石
这是一本关于
数据结构
和算法的书,以Java为描述语言,介绍了计算机编程中常用的
数据结构
和算法。全书共13章,讲述了常见的
数据结构
、排序算法、位运算、树、递归、回溯算法、贪心算法、双指针和滑动窗口、BFS和DFS、...
如何学好
数据结构
与算法
遇到
一个
实际
问题
,通过
问题
分析,选择使用什么样的算法策略,基于这种算法策略选择什么样的
数据结构
,有时算法策略和
数据结构
的选择并不是唯一的,不同的算法策略和
数据结构
设计的算法,其复杂性是不同的。...
C#
111,098
社区成员
642,554
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章