• 大小: 3KB
    文件类型: .cpp
    金币: 1
    下载: 0 次
    发布日期: 2021-06-14
  • 语言: C/C++
  • 标签:

资源简介

对于短路的你,希望算法代码给你一个新的思路,代码的讲解利于你更好的对于题目的详细解释同时学会方法,利于自身的创新

资源截图

代码片段和文件信息

#include
#include
#include 
#define TRUE 1
#define FALSE 0
using namespace std;
typedef struct Node//坐标点
{
    double x;
    double y;
}Node;
typedef struct List
{
    Node* data;      //点
    int count;      //点的个数
}List;
typedef struct CloseNode
{
    Node a;
    Node b;     //计算距离的两个点
    double space;     //距离平方
}CloseNode;
    int n;     //点的数目
//输入各点到List中
void create(List &L)
{
    cin >> n;
    L.count = n;
    L.data = new Node[L.count];      //动态空间分配
    for (int i = 0; i    cin >> L.data[i].x >> L.data[i].y;
}
//求距离的平方
double square(Node a Node b)
{
    return ((a.x - b.x)*(a.x - b.x)) + ((a.y - b.y)*(a.y - b.y));
}
//冒泡排序
void BubbleSort(Node r[] int length)
{
    int change n;
    n = length; change = TRUE;
    double b c;
    for (int i = 0; i    {
        change = FALSE;
        for (int j = 0; j            {
                if (r[j].x>r[j + 1].x)
                {
                     b = r[j].x; c = r[j].y;
                     r[j].x = r[j + 1].x; r[j].y = r[j + 1].y;
                     r[j + 1].x = b; r[j + 1].y = c;
                     change = TRUE;
                }
            }
    }
}
//分治法中先将坐标按X轴从小到大的顺序排列
void paixu(List L)
{
    BubbleSort(L.data L.count);   //调用冒泡排序
}
//左右各距中线d的区域的最近对算法
void middle(const List & L CloseNode &cnode int 

评论

共有 条评论

相关资源