博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
查找不在数组里的字母
阅读量:6040 次
发布时间:2019-06-20

本文共 842 字,大约阅读时间需要 2 分钟。

题目:有一个数组包括 非常多字母,怎样查找 26 个字母 不在 里面的字母

            eg: {a,b,c,c,c,c} 那么就是 d - z

算法思路:维护一个 整形数组 相应 字母数组的 asci 码, 查找 字母数组,假设某字母出现一次,相应的 整形数组 就 + 1。最后,整形 数组为 0 的,就是没出现的。

C#代码实现例如以下:

//1. 1+'a' 会得到一个数字            //2. 为了使 算法更完好,增加一个 计数,假设 26 个字母都找到了,就不须要在找了            char[] chArr = new char[] { 'a', 'b', 'c', 'd', 'e', 'g', 'k', 'k', 'l', 'l', 'z' };            int[] intArr = new int[26];            int num = 26;            for(int i = 0;i < chArr.Length;i++)            {                if (intArr[chArr[i] - 'a'] == 0 && num > 0)                {                    intArr[chArr[i] - 'a']++;                    num--;                }            }            for (int i = 0; i < intArr.Length;i++ )            {                if (intArr[i] == 0)                    Console.WriteLine(Convert.ToChar(i + 'a'));            }
这仅仅是本人的想法和实现,假设有其他意见的,欢迎提出讨论。

转载地址:http://szghx.baihongyu.com/

你可能感兴趣的文章
BZOJ 2756: [SCOI2012]奇怪的游戏 网络流/二分
查看>>
master + worker模式的node多核解决框架——node-cluster
查看>>
Android如何实现超级棒的沉浸式体验
查看>>
使用node打造自己的命令行工具方法教程
查看>>
Express代理中间件问题与解决方案
查看>>
||和&&返回什么?
查看>>
linux在文件中查找指定字符串,然后根据查找结果来做进一步的处理
查看>>
在Oracle中删除所有强制性外键约束
查看>>
【R】R语言使用命令行参数 - [编程技巧(Program Skill)]
查看>>
经典算法题每日演练——第二题 五家共井
查看>>
存储过程中拼接的变量和点的问题
查看>>
ASP.NET那点不为人知的事(一)
查看>>
HTML 表格
查看>>
VMware 虚拟化编程(7) — VixDiskLib 虚拟磁盘库详解之三
查看>>
php 未实例化类调用方法的问题
查看>>
我对读计算机软件专业硕士的几点看法
查看>>
用JS写CSS
查看>>
TOJ4537: n阶行列式
查看>>
3.16
查看>>
表单文件上传与文件下载
查看>>