• 注册
• 关注：2 内容：62

# 937. Reorder Data in Log Files

• 查看作者
• 打赏作者
• Lv. 44
VIP
小可爱

You have an array of `logs`.  Each log is a space delimited string of words.

For each log, the first word in each log is an alphanumeric identifier.  Then, either:

• Each word after the identifier will consist only of lowercase letters, or;

• Each word after the identifier will consist only of digits.

We will call these two varieties of logs letter-logs and digit-logs.  It is guaranteed that each log has at least one word after its identifier.

Reorder the logs so that all of the letter-logs come before any digit-log.  The letter-logs are ordered lexicographically ignoring identifier, with the identifier used in case of ties.  The digit-logs should be put in their original order.

Return the final order of the logs.

Example 1:

`Input: logs = ["dig1 8 1 5 1","let1 art can","dig2 3 6","let2 own kit dig","let3 art zero"]Output: ["let1 art can","let3 art zero","let2 own kit dig","dig1 8 1 5 1","dig2 3 6"]`

Constraints:

1. `0 <= logs.length <= 100`

2. `3 <= logs[i].length <= 100`

3. `logs[i]` is guaranteed to have an identifier, and a word after the identifier.

```class Solution:
def reorderLogFiles(self, logs: List[str]) -> List[str]:
a = []
b = []
c = []
for i in logs:
if i[-1].isalpha():
a.append([i,' '.join(i.split(' ')[1:])+' '+i.split(' ')[0]])
else:
b.append(i)
a = sorted(a,key=lambda x:x[1])
for a1 in a:
c.append(a1[0])
return c + b```

请登录之后再进行评论

WordPress后台-外观-小工具 进行配置小工具

• 做任务
• 全部清空