Arrays 如何首先将用户分配到数组的中心元素?按此顺序分配座位,3C、3B、3A、3E
如果我有一个2d锯齿阵列,设置为代表剧院中的座位。如何将用户分配到他们所选行中间的第一个空座位。例如,如果我选择第3排,可用的座位是3A、3B、3C、3E。我想给自己分配3C,因为这是第一个朝向中心的空座位Arrays 如何首先将用户分配到数组的中心元素?按此顺序分配座位,3C、3B、3A、3E,arrays,Arrays,如果我有一个2d锯齿阵列,设置为代表剧院中的座位。如何将用户分配到他们所选行中间的第一个空座位。例如,如果我选择第3排,可用的座位是3A、3B、3C、3E。我想给自己分配3C,因为这是第一个朝向中心的空座位 String[][] theater = {{"1A"}, {"2A", "2B", "Tom"}, {"3A", "3B", "3C", "Ben", "3E"}, {"4A", "4B", "4C", "4D", "4E", "4F", "4G"},
String[][] theater = {{"1A"}, {"2A", "2B", "Tom"},
{"3A", "3B", "3C", "Ben", "3E"},
{"4A", "4B", "4C", "4D", "4E", "4F", "4G"},
{"Rachel", "Ella", "5C", "5D", "5E", "Sam", "5G", "5H", "5I"}
};
//This is the jagged 2d array.
我得到一个错误,分配从左边开始的第一个空座位,例如3A,而不是3C。int mid=Math.ceil(arr[row].length/2);
int mid = Math.ceil(arr[row].length/2);
boolean flag=false;
if(isAvailable(theater[row][mid])
{
allocate(theater[row][mid-i]);
flag=true;
}
for(int i=1; i<mid && !flag; i++)
{
if(isAvailable(theater[row][mid-i])
{
allocate(theater[row][mid-i]);
flag=true;
break;
}
else(isAvailable(theater[row][mid+i])
{
allocate(theater[row][mid-i]);
flag=true;
break;
}
}
if(!flag)
{
System.out.println("No Seats are available in the given row");
}
布尔标志=假;
如果(可用(剧院[世界其他地区][中部])
{
分配(剧院[世界其他地区][mid-i]);
flag=true;
}
for(inti=1;iintmid=Math.ceil(arr[row].length/2);
布尔标志=假;
如果(可用(剧院[世界其他地区][中部])
{
分配(剧院[世界其他地区][mid-i]);
flag=true;
}
对于(int i=1;i