当前位置:首页 » 操作系统 » 算法试题

算法试题

发布时间: 2022-01-09 17:45:32

① 一个算法

python">#py3
deffun(lis,n):
foriinlis:#循环从lis中取出i
if(n-i)inlis://如果n-i在lis中,即找到了两个和街于n的数
returni,n-i//返回
li=[1,2,3,4,5,6,8,9]
print(fun(li,7))

② 关于算法的选择题

即使用来排序
那排序后的有序列也算是输出
输出指的是有结果

③ Java算法练习题

我就直接根据你提供的数组数值来了,没有打注释,有什么不懂的可以继续追问。

public class ThreeSum {

public static void main(String[] argv) {

int a[][] = {

{ 259, 132, 799, 113 },

{ 332, 262, 209, 863 },

{ 807, 301, 684, 343 }

};

int[] b = new int[12];

int max;

int index = 0;

for ( int i = 0; i < 3; i++ ) {

for ( int j = 0; j < 4; j++ ) {

b[index++] = sum(a[i][j]);

}

}

max = b[0];

index = 0;

for ( int i = 1; i < 12; i++ ) {

if ( max < b[i] ) {

max = b[i];

index = i;

}

}

System.out.println("数字之和最大的数为: " + max);

System.out.printf("该数组的位置为: a[%d][%d] ", index / 4, index % 4);

}

public static int sum(int a) {

return (int)( ( a / 100 ) + ( ( a % 100) / 10 ) + ( a % 10 ) );

}

}

结果图如下:

④ 数据结构与算法试题,高分,求答案啊

给你第一题解法吧:后面的实在是不想做。

先根:ABCDEFGHI

中根:CBEDAGFHI

遍历的基本方法:先左子树后右子树。

1,先根遍历可以确定根节点为A,

2,依据1步,可以在中根遍历中确定左子树为:CBED,右为:GFHI

3,在可以重复1,2步。就可以得到结果。

A

BF

CDGH

I

4,O(n^3)+O(1)

⑤ 几个关于算法的题目

第1题,先统计一下每一点的入度和出度,出度代表认为几个人,入度代表被几个人认识。
最后看看哪一个人的入度是==n-1,出度是0的就行

大整数相乘的话可以模拟小学生摆竖式。
先把数字的每一位存在整型数组中。
然后一位一位乘过去。把结果加起来就行。复杂度是n*m

最后一个是状态压缩DP
设dp[i][j]代表前i-1已经摆好,第i行每一状态是j的情况下的种数。

然后按行行转移。
复杂度是2^n*2^n*n

⑥ 算法题。。

//这是我提交的代码,仅供参考

#include<stdio.h>
#include<stdlib.h>
#include<math.h>

structNode
{
intX;
intY;
intY_tmp;
intl;
intr;
intcapacity;
}node[100001];


intN,R;

intcmp(structNode*a,structNode*b)
{
returna->r-b->r;
}

intIs_Sucess(intmiddle)
{
inti,j,start=0;
for(i=0;i<N;i++)
{
node[i].capacity=middle;
j=start;
while(node[i].capacity>0&&node[j].l<=node[i].X&&j<N)
{
/* if(node[j].Y_tmp==0)
{
j++;
continue;
}*/
if(node[j].r<node[i].X&&node[j].Y_tmp>0)
return0;
if(node[j].l<=node[i].X&&node[j].r>=node[i].X)
{
if(node[i].capacity>=node[j].Y_tmp)
{
node[i].capacity-=node[j].Y_tmp;
node[j].Y_tmp=0;
start=j+1;
}
else
{
node[j].Y_tmp-=node[i].capacity;
node[i].capacity=0;
}
}
j++;
}
}
if(node[N-1].Y_tmp>0)
return0;
return1;
}

intBinary_Search(inthigh,intlow)
{
inti,middle;
while(high!=low)
{
middle=(high+low)/2;
for(i=0;i<N;i++)
node[i].Y_tmp=node[i].Y;
if(Is_Sucess(middle))
high=middle;
else
low=middle+1;
}
returnhigh;
}

intmain()
{
intT;
inti,j;
inthigh;
longlongintlow;
scanf("%d",&T);
while(T--)
{
scanf("%d%d",&N,&R);
low=0;
high=0;
for(i=0;i<N;i++)
{
scanf("%d%d",&node[i].X,&node[i].Y);
node[i].l=node[i].X-R;
node[i].r=node[i].X+R;
if(high<node[i].Y)
high=node[i].Y;
low+=node[i].Y;
}
qsort(node,N,sizeof(node[0]),cmp);
low=low/N;
high=Binary_Search(high,low);
printf("%d ",high);
}
system("pause");
return0;
}

热点内容
打账号密码是什么 发布:2024-11-16 19:26:07 浏览:289
安卓4用什么版本微信 发布:2024-11-16 19:25:11 浏览:692
一般手机重启以后密码是多少 发布:2024-11-16 19:17:25 浏览:170
辽宁舰访问香港 发布:2024-11-16 19:04:58 浏览:778
叮咚脚本 发布:2024-11-16 19:03:56 浏览:90
电脑主流品牌配置参数有哪些 发布:2024-11-16 18:59:45 浏览:284
科美ftp如何设置 发布:2024-11-16 18:56:17 浏览:751
安卓吉他调音器怎么用 发布:2024-11-16 18:54:30 浏览:505
java配置tomcat 发布:2024-11-16 18:50:09 浏览:76
计算法配平 发布:2024-11-16 18:48:34 浏览:285