freeCodeCamp/curriculum/challenges/chinese/08-coding-interview-prep/rosetta-code/top-rank-per-group.chinese.md

96 lines
4.1 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters!

This file contains invisible Unicode characters that may be processed differently from what appears below. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to reveal hidden characters.

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

---
title: Top rank per group
id: 595011cba5a81735713873bd
challengeType: 5
videoUrl: ''
localeTitle: 每组排名最高
---
## Description
<section id="description">任务: <p>在每个组中查找排名前N位的数据其中N作为参数提供。等级和组的名称也作为参数提供。 </p>鉴于以下数据: <pre> [
{姓名:&#39;Tyler Bennett&#39;id&#39;E10297&#39;薪水32000部门&#39;D101&#39;}
{姓名:&#39;John Rappl&#39;id&#39;E21437&#39;薪水47000部门&#39;D050&#39;}
{姓名:&#39;George Woltman&#39;id&#39;E00127&#39;薪水53500部门&#39;D101&#39;}
{name&#39;Adam Smith&#39;id&#39;E63535&#39;薪水18000部门&#39;D202&#39;}
{姓名:&#39;Claire Buckman&#39;id&#39;E39876&#39;薪水27800部门&#39;D202&#39;}
{姓名:&#39;David McClellan&#39;id&#39;E04242&#39;薪水41500部门&#39;D101&#39;}
{name&#39;Rich Holcomb&#39;id&#39;E01234&#39;薪水49500dept&#39;D202&#39;}
{姓名:&#39;Nathan Adams&#39;id&#39;E41298&#39;薪水21900部门&#39;D050&#39;}
{姓名:&#39;Richard Potter&#39;id&#39;E43128&#39;薪水15900部门&#39;D101&#39;}
{姓名:&#39;David Motsinger&#39;id&#39;E27002&#39;薪水19250dept&#39;D202&#39;}
{姓名:&#39;Tim Sampair&#39;id&#39;E03033&#39;薪水27000部门&#39;D101&#39;}
{姓名:&#39;Kim Arlich&#39;id&#39;E10001&#39;薪水57000部门&#39;D190&#39;}
{name&#39;Timothy Grove&#39;id&#39;E16398&#39;薪水29900部门&#39;D190&#39;}
]。
</pre>通过调用<code>topRankPerGroup(10, data, &#39;dept&#39;, &#39;salary&#39;)</code>可以对每个部门的前10名员工进行排名。给出以下数据 <pre> [
{name&#39;Friday 13th&#39;,类型:&#39;恐怖&#39;评分9.9}
{姓名:“榆树街上的梦魇”,类型:&#39;恐怖&#39;等级5.7}
{name&#39;Titanic&#39;,类型:&#39;drama&#39;评分7.3}
{name&#39;Maze Runner&#39;,类型:&#39;scifi&#39;评级7.1}
{name&#39;Blade runner&#39;,类型:&#39;scifi&#39;评分8.9}
]。
</pre>通过调用<code>topRankPerGroup(1, data, &#39;genre&#39;, &#39;rating&#39;)</code>可以在每个类型中对排名最高的电影进行排名</section>
## Instructions
<section id="instructions">
</section>
## Tests
<section id='tests'>
```yml
tests:
- text: <code>topRankPerGroup</code>是一个函数。
testString: 'assert(typeof topRankPerGroup === "function", "<code>topRankPerGroup</code> is a function.");'
- text: <code>topRankPerGroup</code>在负n值上返回undefined。
testString: 'assert(typeof topRankPerGroup(-1, []) === "undefined", "<code>topRankPerGroup</code> returns undefined on negative n values.");'
- text: 第一部门必须是D050
testString: 'assert.equal(res1[0][0].dept, "D050", "First department must be D050");'
- text: 第一部门必须是D050
testString: 'assert.equal(res1[0][1].salary, 21900, "First department must be D050");'
- text: 最后一个部门必须是D202
testString: 'assert.equal(res1[3][3].dept, "D202", "The last department must be D202");'
- text: '<code>topRankPerGroup(1, ...)</code>必须仅返回每组的排名最高的结果。'
testString: 'assert.equal(res2[2].length, 1, "<code>topRankPerGroup(1, ...)</code> must return only top ranking result per group.");'
- text: '<code>topRankPerGroup(1, ...)</code>必须仅返回每组的排名最高的结果。'
testString: 'assert.equal(res3[2][1].name, "Maze Runner", "<code>topRankPerGroup(1, ...)</code> must return only top ranking result per group.");'
```
</section>
## Challenge Seed
<section id='challengeSeed'>
<div id='js-seed'>
```js
function topRankPerGroup(n, data, groupName, rankName) {
// Good luck!
return true;
}
```
</div>
### After Test
<div id='js-teardown'>
```js
console.info('after the test');
```
</div>
</section>
## Solution
<section id='solution'>
```js
// solution required
```
</section>