Linq-面试题

1.用逗号分隔表示成绩的字符串,计算成绩的平均值#

//10,60,30,20,70,90
string str = "10,60,30,20,70,90";
string[] strs = str.Split(',');
IEnumerable<int> nums = strs.Select(it => Convert.ToInt32(it));
double avg = nums.Average();
Console.WriteLine(avg);
Console.ReadLine();

合并成一句

double avg = str.Split(',').Select(it=>Convert.ToInt32(it)).Average();

2.统计一个字符串中,每个字母出现的频率(忽略大小写),然后按照从高到低顺序输出出现频率高于两次的单词和其出现的频率#

string s = "hello world,hahaha,heiheihei";

//去空格,去标点符号
//IsLetter 是否是字母

var items = s.Where(it => char.IsLetter(it)).Select(it => char.ToLower(it))

    .GroupBy(it => it).Select(it => new { it.Key, Count = it.Count() })

    .OrderByDescending(it => it.Key).Where(it => it.Count > 2);

foreach (var item in items)
{
    Console.WriteLine(item);
}

Console.WriteLine();
Console.ReadLine();

作者:DotNeter-Hpf

出处:https://www.cnblogs.com/DotNeter-Hpf/p/16620706.html

版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。

客官,点个推荐再走可好

posted @   DotNeter-Hpf  阅读(112)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
more_horiz
keyboard_arrow_up dark_mode palette
选择主题
menu
点击右上角即可分享
微信分享提示