BUG: in _nsorted for frame with duplicated values index
- [x] closes #13412
- [ ] tests added / passed
- [x] passes `git diff upstream/master | flake8 --diff`
- [x] whatsnew entry

what doesn't pass tests ?
 You must fix test to pass `flake8` check. 
 ## [Current coverage](https://codecov.io/gh/pydata/pandas/pull/13428?src=pr) is **84.23%**

> Merging [#13428](https://codecov.io/gh/pydata/pandas/pull/13428?src=pr) into [master](https://codecov.io/gh/pydata/pandas/branch/master?src=pr) will increase coverage by **<.01%**

``` diff
@@             master     #13428   diff @@
==========================================
  Files           138        138          
  Lines         50805      50810     +5   
  Methods           0          0          
  Messages          0          0          
  Branches          0          0          
==========================================
+ Hits          42796      42801     +5   
  Misses         8009       8009          
  Partials          0          0          
```

> Powered by [Codecov](https://codecov.io?src=pr). Last updated by [62b4327...9e47bbe](https://codecov.io/gh/pydata/pandas/compare/62b4327c9b60d890b1d404cddf3a4244254346a8...9e47bbe9afffa7e7fb1a539352114bfa81127b44)
 `git diff upstream/master | flake8 --diff` will help you track down the changes you have to make.
 I think a simple soln will work here

```
(Pdb) p self.loc[ser.index].head(n).sort_values(columns, ascending=ascending,kind='mergesort')
   a  b
1  3  2
(Pdb) p self.loc[ser.index]
   a  b
1  3  2
1  4  1
```
 ~~@jreback what do you mean ? in `_nsorted` ? I don't think so~~

Testing. I think you're right
 maybe the `.head()` should go at the end. I don't recall the exact guarantees of this.
 I tested and your soln doesn't work and doesn't pass the test with this case :
`df = pd.DataFrame({'a': [1, 2, 3, 4],
                           'b': [4, 3, 2, 1]}, index=[0, 0, 1, 1])`

Any other suggestion ?
 @Tux1 well then play around with it. What you are doing is WAY too complicated for a simple take.
 can you rebase / update?
