当前位置: 首页 > news >正文

seo网站项目讲解西安网站建设xamokj

seo网站项目讲解,西安网站建设xamokj,本溪建设网站,威联通 wordpress网罗开发 #xff08;小红书、快手、视频号同名#xff09; 大家好#xff0c;我是 展菲#xff0c;目前在上市企业从事人工智能项目研发管理工作#xff0c;平时热衷于分享各种编程领域的软硬技能知识以及前沿技术#xff0c;包括iOS、前端、Harmony OS、Java、Python等… 网罗开发 小红书、快手、视频号同名 大家好我是 展菲目前在上市企业从事人工智能项目研发管理工作平时热衷于分享各种编程领域的软硬技能知识以及前沿技术包括iOS、前端、Harmony OS、Java、Python等方向。在移动端开发、鸿蒙开发、物联网、嵌入式、云原生、开源等领域有深厚造诣。 图书作者《ESP32-C3 物联网工程开发实战》 图书作者《SwiftUI 入门进阶与实战》 超级个体COC上海社区主理人 特约讲师大学讲师谷歌亚马逊分享嘉宾 科技博主极星会首批签约作者 文章目录 摘要描述题解答案Bash 实现Swift 实现 题解代码分析Bash 解法Swift 解法 示例测试及结果时间复杂度空间复杂度总结未来展望参考资料 摘要 本文将探讨如何统计文本文件中每个单词的出现频率具体实现包括 Bash 脚本的经典解法和 Swift 的高效实现。我们不仅会提供完整的代码还将逐步拆解逻辑帮助读者理解实现细节。同时文章会分析时间与空间复杂度并附上运行示例及结果。 描述 写一个 bash 脚本以统计一个文本文件 words.txt 中每个单词出现的频率。 为了简单起见你可以假设 words.txt只包括小写字母和 。每个单词只由小写字母组成。单词间由一个或多个空格字符分隔。 示例: 假设 words.txt 内容如下 the day is sunny the the the sunny is is你的脚本应当输出以词频降序排列 the 4 is 3 sunny 2 day 1说明: 不要担心词频相同的单词的排序问题每个单词出现的频率都是唯一的。你可以使用一行 Unix pipes 实现吗 题解答案 Bash 实现 我们可以使用一行 Unix 管道命令来高效完成统计任务 cat words.txt | tr -s \n | sort | uniq -c | sort -rn | awk {print $2, $1}Swift 实现 我们用 Swift 提供更具可读性和扩展性的解法 import Foundationfunc countWordFrequencies(filePath: String) {do {let content try String(contentsOfFile: filePath)let words content.split { $0.isWhitespace }.map { String($0) }var wordCount: [String: Int] [:]for word in words {wordCount[word, default: 0] 1}let sortedWordCount wordCount.sorted { $0.value $1.value }for (word, count) in sortedWordCount {print(\(word) \(count))}} catch {print(Error reading file: \(error.localizedDescription))} }// 示例调用 let filePath path/to/words.txt countWordFrequencies(filePath: filePath)题解代码分析 Bash 解法 cat words.txt | tr -s \n | sort | uniq -c | sort -rn | awk {print $2, $1}cat words.txt: 读取文件内容。tr -s \n: 将所有空格替换为换行符从而每行一个单词。sort: 对单词排序方便后续统计。uniq -c: 统计每个单词的出现次数并输出格式为 次数 单词。sort -rn: 按次数降序排列。awk {print $2, $1}: 调整输出顺序为 单词 次数。 Swift 解法 读取文件: 使用 String(contentsOfFile:) 读取文本内容。分割单词: 用 split 按空格切分字符串并将结果转换为字符串数组。统计频率: 利用字典存储每个单词的计数wordCount[word, default: 0] 1 实现自动初始化与计数。排序: 使用 sorted 按频率降序排列。输出结果: 遍历排序后的数组并打印结果。 示例测试及结果 输入文件 words.txt: the day is sunny the the the sunny is isBash 输出: the 4 is 3 sunny 2 day 1Swift 输出: the 4 is 3 sunny 2 day 1时间复杂度 Bash 实现: sort: O(n log n)其中 n 是单词总数。uniq -c: O(n)。sort -rn: O(n log n)。总复杂度O(n log n)。 Swift 实现: 读取与分割: O(n)。统计频率: O(n)。排序: O(k log k)其中 k 是唯一单词的个数。总复杂度O(n k log k)。 空间复杂度 Bash 实现: 依赖 Unix 管道无需额外存储空间复杂度为 O(1)。Swift 实现: 使用数组和字典存储单词和频率复杂度为 O(n)。 总结 Bash 解法: 简洁高效适用于快速处理任务。Swift 解法: 代码结构清晰适合需要更多功能扩展的场景。 未来展望 扩展到大规模分布式文本处理可引入 Hadoop 或 Spark。添加多语言支持处理更复杂的文本格式如标点符号、大小写敏感性。 参考资料 Bash 文档Swift 官方文档Linux tr 手册
http://www.tj-hxxt.cn/news/142780.html

相关文章:

  • o2o手机网站建设难wordpress get_post_meta
  • 温州网站设计服务商个人网站备案信息
  • 连城县住房和城乡建设局 网站网页升级中每天自动更新什么意思
  • 网站会员发展计划基于大数据的精准营销
  • 郑州模板建站无锡网站建设 微信公众号
  • 北京网站建设+知乎导航网站html模板
  • 网站和自媒体都可以做招工 最新招聘信息
  • 有没有免费的企业网站建设做网站 有哪些问题
  • 广西医院响应式网站建设方案中国最新新闻头条
  • 金山区网站制作建设电影网站视频
  • 汕头seo建站wordpress开发公司
  • 黄州网站建设百度2022年版本下载
  • 网站开发关键技术开发网站年度工作总结及明年工作计划
  • 黄页88网站关键词怎么做人才网站开发
  • 外贸多语言网站建设贷款申请入口
  • 主题资源网站建设作业北京工程质量建设协会网站
  • 一般门户网站深情密码免费观看网站
  • 联通网站备案系统WordPress响应式幻灯片
  • 上海网站制作优化免费舆情网站直接打开
  • 大连科技公司建设网站个人如何做微商城网站
  • 网站建设工作计划表网站建设立项申请书
  • 自己可以做网站空间吗中国建设银行2024版本
  • 自己做网站系统首选平台网站发展阶段怎么做
  • 榆社网站建设河南省建设监理协会网站人才十
  • 网站推广计划书具体包含哪些基本内容?阜阳网站制作公司多少钱
  • 亿网行网站建设一个人做网站 没有人写文章怎么办
  • 那个网站专利分析做的好做动漫网站的意义
  • 百度描述 网站做的网站怎么样才能再网上看到
  • 建立个人网站流程建设工程检测报告查询网站
  • wordpress 数据库 恢复seo云优化是什么意思