首页 > 其他分享 >设计排序可视化

设计排序可视化

时间:2022-11-25 12:02:16浏览次数:83  
标签:排序 MAX 方框 箭头 可视化 设计 矩形 边框

1.

https://opencv.org/releases/

在此网站下载opencv 4.5.5库

2.安装opencv

https://blog.csdn.net/m0_47472749/article/details/111328183
https://blog.csdn.net/CaiSenNan/article/details/119789519

3.预计结果:
用户输入一个数组;

屏幕整体背景纯黑,
在屏幕左右显示两个纯白色方框,框中是代表数字的矩形,其中一个方框下有纯白色箭头;
在方框中央设计一个图案,每当用户点击此图案,则算法展示一步;
我们称视有白色箭头的边框为当前边框;
假设当前方框为A,每运行一步,就将新的画面展示在B上,A框数据不变,但失去箭头,B边框得到箭头;
方框中的内容:
一排矩形,全部为黑色边框,但B中与A中相比发生了”改变“的矩形应在上方有箭头指示。
此处的“改变”:
例如在冒泡,选择,插入排序中swap操作的对象。

4.设计矩形:
考虑到输入数据的范围,我们用结构体来储存矩形

struct num {
    double val;
    double high;
    double width;
};

分别表示值的大小,矩形的高和宽

5.计算矩形大小:

设置最高高度H_MAX,最大宽度W_MAX

首先进行一次排序;

设输入的数组是a,长度len,将a排序以后从小到大放到res数组,从res中寻找a中每一个元素,记a[i]对应res[j],H_MAX*j/n就是该矩形的高度;

a中元素a[x]的矩形宽度是(x+1)/len(a)*W_MAX;

6.如何绘制方框:

OpenCV: Basic Drawing

7.如何获取用户的点击:

标签:排序,MAX,方框,箭头,可视化,设计,矩形,边框
From: https://www.cnblogs.com/-ark/p/16924587.html

相关文章