【发布时间】:2021-02-10 06:37:06
【问题描述】:
我的作业需要帮助,我收到了这个问题,但不知道如何找到答案:
考虑一组退休人员,其中任何人在 X 年开始工作并在 Y 年退休。创建一个函数,接收遵循以下结构的数组:[[x1,y1],[x2,y2],...[xn,yn]] 并计算哪一年大多数人都在工作。
考虑:
- X 值表示人员开始工作的年份
(x>0, x<y); - Y 值表示此人退休的年份
(y>0); - 必须将开始年份视为工作年份;
- 必须将退休年份视为工作年份。
示例:Input [[1960,2005],[1945,2008],[1938,1999],...]
我试图将最低和最高年份进行比较,并逐年计算有多少人在工作,但没有成功。
编辑:我设法将数组转换为一个并对所有工作年份进行排序。现在我需要管理如何找到每年工作的人。我开发的代码如下:
var variety = [[2000,2008],[2003,2009],[2001,2012],[2004,2020],[2003,2021],[1998,2015]], year = [], anos2 = 0, k=0, minYear=0, maxYear=0
function getyear(people){
for(var lin = 0; lin < people.length; lin++){ //Esse for é para transformar a matriz em um único vetor dinamicamente
for(var col = 0; col < people.length-(people.length-2); col++){
year[k] = people[lin][col]
k++
}
}
year.sort(compareNumbers) //Ordena o vetor dos anos trabalhados
console.log(year)
console.log(people)
}
function compareNumbers(a,b){
return a -b
}
getyear(variety)
【问题讨论】:
-
请包含您尝试过的代码,因为我们无法提供我们看不到的代码。 SO 不是为我编写代码的服务。
标签: javascript arrays function