文章

28

粉丝

19

获赞

0

访问

1.4k

头像
【2020年】408计算机统考真题模拟考试 - 第41题答案笔记
数据结构
发布于2024年12月15日 16:21
阅读数 57

计算机考研408统考历年真题及答案解析

(1) 使用三指针法,为三个数组分别分配三个index号i,j,k = 0 ;指向最首元素,使用变量minDis存储最小距离,若此时计算出的D小于minDis则更新minDis = D;比较此时三个数组中的元素,最小的那一个索引自增,若其无法自增,则次小元素的索引自增,以此类推,直至遍历完毕,返回minDis;

(2)

#define INT_MAX = 1 << 31 -1
#include<cmath>
using namespace std;
int getMinDis(int[] s1, int[] s2, int[] s3,int n1, int n2 , int n3)
{
int i = 0, j= 0, k=0;
int minDis = INT_MAX;
while(i < n1 && j < n2 && k < n3)
{
 int dis = abs(a-b) + abs(b-c) + abs(c-a);
 if (dis < minDis)
 minDis = dis;
 if(s1[i] <= s2[j] && s1[i] <= s3[k])
{
  if(i + 1 < n1)
  i++;
  else
{
  if(s2[j] <= s3[k])
{
 if(j+1 < n2)
j++;
else
 k++;
}
else if(s2[j] <= s1[i] && s2[j] <= s3[k])
{
  if(j + 1 < n2)
  j++;
  else
{
  if(s1[i] <= s3[k])
{
 if(i+1 < n1)
i++;
else
 k++;
}
else if(s3[k] <= s1[i] && s3[k] <= s3[j])
{
  i...

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发