• 大小: 547KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-13
  • 语言: 其他
  • 标签:

资源简介

自己用C写了一下黑白点匹配问题,还算比较详细吧。 注意:有两个main函数(main,main01),分别是两种思路写的。

资源截图

代码片段和文件信息

#include 
#include 
#include 
#include “myfunction.h“




void match01(point *b point *w int n)
{
int wn = n bn = n;
int i = 0 k = 0count = 0;

double tmp = 123456;
bool status = false;

int *mark;
mark = (int *)malloc(sizeof(int)*bn);

for (i = 0; i < bn; i++)
mark[i] = 0;

while (wn > 0)
{
i = n;   //初始化i;
while(--i >=0 && b[i].x >= w[0].x)  //可以匹配X值的点
{
if (b[i].y >= w[0].y && mark[i] == 0)  //可以匹配Y值
{
status = true;
if (tmp > b[i].y)  //找到最匹配的点
{
tmp = b[i].y;
k = i;      //最匹配点的位置
}
}
}
//用mark标记该点已经匹配也可以直接删除。
if (status)
{
count++;  //计数器
mark[k] = 1;
//直接打印匹配点。
printf(“B(%lf%lf) match W(%lf%lf)\n“ b[k].x b[k].y w[0].x w[0].y);
}
//值得初始化
tmp = 123456;
status = false;
//删除W[0]
DeleteMax_MaxHeap(w &wn);
}

//
printf(“the max match is %d“ count);
free(mark);
mark = NULL;
}


int main01()
{
point b[18] = { 13910813991071205141417911111117412581487691213610166 };
point w[18] = { 151017466969368614867962717121611117151511111078917 };
int n = 18;
//对B进行排序
quicksort_pointX(b 0 n - 1);

/*for (int i = 0; i < 11; i++)
{
printf(“%lf%lf\n“ b[i].x b[i].y);;
}*/

//对W点创建堆
Create_MAXHeap(w n); 

//
match01(b w n);

getchar();
return 0;
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

    ..A..H.     45056  2017-05-24 20:51  黑白点匹配问题\.vs\黑白点匹配问题\v14\.suo

     文件      50688  2017-05-24 20:51  黑白点匹配问题\Debug\黑白点匹配问题.exe

     文件     379672  2017-05-24 20:51  黑白点匹配问题\Debug\黑白点匹配问题.ilk

     文件     700416  2017-05-24 20:51  黑白点匹配问题\Debug\黑白点匹配问题.pdb

     文件       1530  2017-05-24 20:50  黑白点匹配问题\黑白点匹配问题\black_white_Match.c

     文件       2348  2017-05-24 20:50  黑白点匹配问题\黑白点匹配问题\black_white_match02.c

     文件      13710  2017-05-24 20:51  黑白点匹配问题\黑白点匹配问题\Debug\black_white_Match.obj

     文件      17222  2017-05-20 16:28  黑白点匹配问题\黑白点匹配问题\Debug\black_white_match.obj.enc

     文件      19435  2017-05-24 20:51  黑白点匹配问题\黑白点匹配问题\Debug\black_white_match02.obj

     文件      20246  2017-05-24 19:11  黑白点匹配问题\黑白点匹配问题\Debug\black_white_match02.obj.enc

     文件       8516  2017-05-23 13:42  黑白点匹配问题\黑白点匹配问题\Debug\Heap.obj

     文件       8589  2017-05-24 19:34  黑白点匹配问题\黑白点匹配问题\Debug\MaxHeap.obj

     文件      10821  2017-05-24 19:20  黑白点匹配问题\黑白点匹配问题\Debug\MinHeap.obj

     文件       6131  2017-05-23 14:50  黑白点匹配问题\黑白点匹配问题\Debug\mysort.obj

     文件      68608  2017-05-24 20:51  黑白点匹配问题\黑白点匹配问题\Debug\vc140.idb

     文件      77824  2017-05-24 20:50  黑白点匹配问题\黑白点匹配问题\Debug\vc140.pdb

     文件        371  2017-05-24 20:51  黑白点匹配问题\黑白点匹配问题\Debug\黑白点匹配问题.log

     文件       4094  2017-05-24 20:51  黑白点匹配问题\黑白点匹配问题\Debug\黑白点匹配问题.tlog\CL.command.1.tlog

     文件      14496  2017-05-24 20:51  黑白点匹配问题\黑白点匹配问题\Debug\黑白点匹配问题.tlog\CL.read.1.tlog

     文件       6882  2017-05-24 20:51  黑白点匹配问题\黑白点匹配问题\Debug\黑白点匹配问题.tlog\CL.write.1.tlog

     文件       3214  2017-05-24 20:51  黑白点匹配问题\黑白点匹配问题\Debug\黑白点匹配问题.tlog\link.command.1.tlog

     文件       3750  2017-05-24 20:51  黑白点匹配问题\黑白点匹配问题\Debug\黑白点匹配问题.tlog\link.read.1.tlog

     文件       1094  2017-05-24 20:51  黑白点匹配问题\黑白点匹配问题\Debug\黑白点匹配问题.tlog\link.write.1.tlog

     文件        240  2017-05-24 20:51  黑白点匹配问题\黑白点匹配问题\Debug\黑白点匹配问题.tlog\黑白点匹配问题.lastbuildstate

     文件       1819  2017-05-24 19:34  黑白点匹配问题\黑白点匹配问题\MaxHeap.c

     文件       2798  2017-05-24 19:20  黑白点匹配问题\黑白点匹配问题\MinHeap.c

     文件       1039  2017-05-23 14:50  黑白点匹配问题\黑白点匹配问题\myfunction.h

     文件        868  2017-05-23 13:09  黑白点匹配问题\黑白点匹配问题\mysort.c

     文件       7510  2017-05-23 13:59  黑白点匹配问题\黑白点匹配问题\黑白点匹配问题.vcxproj

     文件       1446  2017-05-23 13:59  黑白点匹配问题\黑白点匹配问题\黑白点匹配问题.vcxproj.filters

............此处省略13个文件信息

评论

共有 条评论

相关资源