2007年5月去一个中小型外企的上机题,笔试全是英文的。没戏了。
package myAction;
public class Balence {
/**
* 求数组index左边的和
* @param a
* @param index
* @return
*/
public static int left(int[] a, int index)
{
int left = 0;
if(index==0)
{
left = a[0];
return left;
}
for(int i=0;i<index;i++)
{
left = left + a[index-1-i];
}
return left;
}
/**
* 求数组右边的和
* @param a
* @param index
* @return
*/
public static int right(int[] a, int index)
{
int right = 0;
if(index==a.length-1)
{
right = a[a.length-1];
return right;
}
for(int i=index+1;i<a.length;i++)
{
right = right + a[i];
}
return right;
}
/**
* 遍历数组,如果左边等于右边,则打印平衡点index
* @param a
*/
public static void balences(int a[])
{
int b[];
int left = 0;
int right = 0;
int length = 0;
for(int i=0;i<a.length;i++)
{
left = left(a,i);
right = right(a,i);
if(left==right)
{
length++;
System.out.println("平衡点" + length + ":" + i);
}
}
System.out.println("平衡点共计" + length + "个");
}
//方法二
//1. 先求總數.
//X =A1+A2+A3+A4+..... +An
//2. 從A1開始累加,設為N , 和等於(X-N)/2 為平衡點.
//3. 一直找到數組最後
//4.除于2后好像结果有点问题??
public static void balence2(int[] a)
{
int sum = 0;
int temp = 0;
int length = 0;
//求数组的总和
for(int i=0;i<a.length;i++)
{
sum = sum + a[i];
}
for(int i=0;i<a.length;i++)
{
temp = temp + a[i];
if(temp==((sum-temp)/2))
{
length++;
System.out.println("平衡点" + length + ":" + i);
}
}
System.out.println("平衡点共计" + length + "个");
}
//测试类
public static void main(String[] args)
{
int[] a = {1,2,5,6,2,4,2,8};
int left = left(a,3);
int right = right(a,3);
// System.out.println("left=" + left);
// System.out.println("right=" + right);
balences(a);
// balence2(a);
}
}
分享到:
相关推荐
查找数组的平衡点。 平衡点是索引的左侧等于索引的右侧的位置。 此函数返回平衡点索引数组。 安装 npm install balance-points bower install balance-points 用法 const balancepoints = require ( 'balance-...
这些选项可以在精度和计算速度之间找到平衡点。 通过刮擦标准数学程序包,还可以自动生成元素操作。 使用汇编代码针对amd64结构优化了各种功能。 要在项目中轻松交换narray包,请使用别名导入,如下所示: ...
简单的初级菜鸟上传的数据结构试验报告,我是大二学的数据结构,主要是帮助那些一点都不会的更菜的菜鸟~!
平衡二叉树大部分操作和二叉查找树类似,主要不同在于插入删除的时候平衡二叉树的平衡可能被改变,并且只有从那些插入点到根结点的路径上的结点的平衡性可能被改变,因为只有这些结点的子树可能变化。 平衡二叉树的...
平衡点 阵列中的领导者 最低平台 按组反转数组 第 K 个最小元素 截留雨水 勾股三元组 巧克力分配问题 股票买卖 左侧较小右侧较大的元素 将数组转换为 Zig-Zag 方式 最后索引为 1 螺旋遍历矩阵 从数组形成的最大数 ...
平衡点 阵列中的领导者 最低平台 按组反转数组 第 K 个最小元素 截留雨水 勾股三元组 巧克力分配问题 股票买卖 左侧较小右侧较大的元素 将数组转换为 Zig-Zag 方式 最后索引为 1 螺旋遍历矩阵 从数组形成的最大数 ...
平衡点 最大和递增子序列 数组中的领先者 最小平台 大小为 k 的所有子数组的最大值 组中的反向数组 第 K 个最小元素 捕集雨水勾股三重巧克力分布问题股票买卖左侧较小右侧较大的元素将数组转换为Zig-Zag方式查找已...
具有给定和的子数组,计算三胞胎数,Kadane算法,数组缺失数,合并两个排序的数组,交替排列重排数组,对数,数组求逆,对0s,1s和2s的数组进行排序,平衡点,阵列,最小平台,成组的反向阵列,第K个最小元素,陷阱...
图示窗口的上半部分显示无向图,下半部分自上而下分别显示 Vexnum、Vexdata、Visited、Low、Squlow(求得 low 值的顺序)和 artpoint(关节点)的信息。 25. 有向图的拓扑排序 图示窗口由5部分组成。其中左上显示有...
阵列中的平衡点 阵列中的领导者 最低平台 按组反转数组 第 K 个最小元素 截留雨水 勾股三元组 巧克力分配问题 股票买卖 左侧较小右侧较大的元素 将数组转换为 Zig-Zag 方式 最后索引为 1 螺旋遍历矩阵 从数组形成的...
810.3 数组指针和指向数组的指针变量 141 10.3.1 指向数组元素的指针 142 10.3.2 通过指针引用数组元素 143 10.3.3 数组名作函数参数 146 10.3.4 指向多维数组的指针和指针变量 148 10.4 字符串的指针指向字符串的针...
leetcode二维数组搜索面试问题 亚马逊 行为的 你最大的成就是什么 你如何评估你现在的老板,他需要改进的地方。...在全年未排序的股票价格数组中,找出买入和卖出的时间点,以实现利润最大化。 您将如何比较具有
810.3 数组指针和指向数组的指针变量 141 10.3.1 指向数组元素的指针 142 10.3.2 通过指针引用数组元素 143 10.3.3 数组名作函数参数 146 10.3.4 指向多维数组的指针和指针变量 148 10.4 字符串的指针指向字符串的针...
JEECG(J2EE Code Generation)是一款基于代码生成器的智能开发平台。引领新的开发模式 (Online Coding-> 代码生成器 -> 手工 ...6.封装带来了很多便利,但是问题就是扩展难,需要找到一个平衡点。 7.增加nosql支持。
def是一个二级指针,它指向的是一个一维数组的指针,数组的元素都是float. (2)double*(*gh)[10]; gh是一个指针,它指向一个一维数组,数组元素都是double*. (3)double(*f[10])(); f是一个数组,f有10个元素,元素都是...
18.2.5 相距最近的点对 18.3 解递归方程 18.4 复杂度的下限 18.4.1 最小最大问题的下限 18.4.2 排序算法的下限 第19章 动态规划 19.1 算法思想 19.2 应用 19.2.1 0/1背包问题 19.2.2 矩阵乘法链 19.2.3 所有顶点对...
2. LOG算子:是高斯和拉普拉斯的双结合,即集平衡(高斯算子,高斯滤波)和边沿(拉普拉斯算子是二阶导求边缘)。这类似于各向异性滤波器(这是高斯一阶导函数),而LOG可以看做是二阶导函数。这两模型来源最初都是...
7.4.4 关节点和重连通分量 7.5 有向无环图及其应用 7.5.1 拓扑排序 7.5.2 关键路径 7.6 最短路径 7.6.1 从某个源点到其余各顶点的最短路径 7.6.2 每一对顶点之间的最短路径 第8章 动态存储管理 8.1 概述 8.2 可利用...
7.4.4 关节点和重连通分量 7.5 有向无环图及其应用 7.5.1 拓扑排序 7.5.2 关键路径 7.6 最短路径 7.6.1 从某个源点到其余各顶点的最短路径 7.6.2 每一对顶点之间的最短路径 第8章 动态存储管理 8.1 概述 ...