字符串处理代码:编写一个函数frequency_sort

题目1:字符串处理

题目名称:字符串的字符频率排序题目描述: 编写一个函数frequency_sort,该函数接收一个字符串 s 作为参数,并返回一个新的字符串,其中字符按照出现频率降序排列。如果有多个字符出现次数相同,则按字符在原字符串中的顺序排列。

示例

input: "tree"
output: "eert"  # 'e' 出现两次,'r' 和 't' 各出现一次

input: "cccaaa"
output: "cccaaa"  # 'c' 和 'a' 各出现三次

input: "Aabb"
output: "bbAa"  # 'b' 出现两次,'A' 和 'a' 各出现一次

代码框架

def frequency_sort(s):
    # Your code here
    pass

result = frequency_sort("tree")
print(result)  # 应该输出 "eert"

题目2:列表操作

题目名称:列表元素的下一个更大元素题目描述: 编写一个函数next_greater_elements,该函数接收一个整数列表 nums 作为参数,并返回一个新的列表,其中每个元素表示原列表中该位置元素的下一个更大元素。如果不存在这样的元素,则返回 -1

示例

input: [2, 1, 2, 4, 3]
output: [4, 2, 4, -1, -1]

input: [1, 2, 1]
output: [2, -1, 2]

代码框架

def next_greater_elements(nums):
    # Your code here
    pass

result = next_greater_elements([2, 1, 2, 4, 3])
print(result)  # 应该输出 [4, 2, 4, -1, -1]

题目3:字典操作

题目名称:字典键值对的键值反转题目描述: 编写一个函数invert_dict,该函数接收一个字典 d 作为参数,并返回一个新的字典,其中原字典的键和值互换。假设原字典中的值是唯一的。

示例

input: {"a": 1, "b": 2, "c": 3}
output: {1: "a", 2: "b", 3: "c"}

input: {"x": 10, "y": 20}
output: {10: "x", 20: "y"}

代码框架

def invert_dict(d):
    # Your code here
    pass

inverted_dict = invert_dict({"a": 1, "b": 2, "c": 3})
print(inverted_dict)  # 应该输出 {1: "a", 2: "b", 3: "c"}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值