Shell脚本:在不排序的情况下查找整数序列中的最大值

2024-03-19

我有一个包含一长串整数的文件:

10
4
66
....

我想使用 UNIX 命令行工具找到最大值。我知道我可以使用sort(事实上​​,这个问题有解决方案,使用sort),但是效率很低,需要 O(N*log(N)) 和大量内存。通过一个简单的 for 循环,我应该能够在 O(N) 和几个字节的内存中找到最大值。

看来一定有一些程序(名称类似于max)这是开箱即用的——这是真的吗?


如果预计没有负数,您可以使用它:

awk '$0>x{x=$0};END{print x}' input.txt

用它来支持负数:

awk 'BEGIN{x=-2147483648};$0>x{x=$0};END{print x}' input.txt

正在初始化x允许解决方案正确处理值

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Shell脚本:在不排序的情况下查找整数序列中的最大值 的相关文章

随机推荐

  • MAVEN_OPTS 与 mvn -D

    我认为两者都定义了相同的 JVM 属性 但两者之间显然存在差异 我找不到明确的解释 如果我在构建的 Jenkins Maven 中使用两者 则只有 D 设置的属性在 System getProperties 的 Java 应用程序中可见 尽
  • p:fileDownload bean方法被调用但文件下载不显示

    您好 我正在使用 JSF 和 Primefaces 进行文件上传和下载相同的文件操作 我结合使用来自不同论坛和博客的技术 BelusC 的博客和 Primefaces Showcase 该操作的主要思想是让用户上传文件并 为上传的文件生成一
  • 数据库连接应该是单例吗?

    Java 中创建单例的最佳方式是什么 数据库连接应该是单例 作为单例它自动是线程安全的 因为理论上数据库不能被许多用户同时访问 数据库连接通常不应是单例 两个原因 许多数据库驱动程序都不是线程安全的 使用单例意味着如果您有许多线程 它们将共
  • 从 phpmailer 获取原始 rfc822 消息

    我正在尝试使用 google api php client 和 gmail api 来允许我的用户验证他们的 gmail 帐户并通过我的网站发送电子邮件 我问了一个更通用的问题 https stackoverflow com questio
  • 时间:2019-03-17 标签:c#Linqselect不同的日期时间天

    我有以下方法 我计划返回一堆不同的日期时间对象 我所说的独特是指独特的日子 不包括时间 问题是 DateTime 对象具有不同的时间 因此即使它们是同一天 也会被评估为唯一 如何让查询忽略日期的时间部分并仅评估日期的唯一性 public L
  • 为什么我的类没有通过“def __init__”或“def __init__”初始化?为什么我会收到“不带参数”类型错误或属性错误?

    如果您的问题作为与此重复的问题而被关闭 那是因为您有一个代码示例 其中包含以下内容 class Example def int self parameter self attribute parameter or class Example
  • 从 DBMS_SCHEDULER 运行 exe

    我是 DBMS SCHEDULER 的新手 我面临一些问题 我想运行 exe所以我创建了一个工作 begin sys dbms scheduler create job job name gt FTREC EXE 1 job type gt
  • 类模板参数推导完美转发

    我想了解演绎指南如何与通用参考一起使用std forward 特别是创建完美的转发包装器 下面的代码提供了在两种情况下试验函子包装器的代码 一种具有隐式推导指南 一种具有显式推导指南 我已经放了很多 and std forward在评论中
  • 如何按列对多维数组进行排序?

    有没有办法使用 sort 方法或任何其他方法按列对列表进行排序 可以说我有清单 John 2 Jim 9 Jason 1 我想对其进行排序 使其看起来像这样 Jason 1 John 2 Jim 9 做到这一点的最佳方法是什么 Edit 现
  • 错误:生成未知

    我正在尝试按照教程进行操作https docs angularjs org tutorial https docs angularjs org tutorial并且运行命令时出错 npm run protractor 这是控制台日志 Mic
  • 从 Woocommerce 中的产品 ID 获取所有订单 ID

    如何按产品 ID 获取包含订单 ID 的数组 我的意思是接收所有展示特定产品的订单 我知道如何通过 MySQL 来做到这一点 但是有没有办法通过WP Query功能 Updates 2017 SQL 查询更改为 SELECT DISTINC
  • Lime vs TreeInterpreter 用于解释决策树[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 石灰来源 https github com marcotcr lime https github com marcotcr lime 树解
  • 如何使用skia Sharp在画布上绘制PDF?

    我参考了skia的官方文档 https learn microsoft com en us dotnet api skiasharp skcanvas view skiasharp 1 68 1 constructing a pdf doc
  • C Master Volume Windows 中的 __uuidof

    我想用 C 改变主音量 但是 uuidof仅适用于 C 我可以用什么来代替它 const CLSID CLSID MMDeviceEnumerator uuidof MMDeviceEnumerator const IID IID IMMD
  • 在JavaScript中使用bind来避免闭包是否正确?

    闭包对于浏览器的内存来说是否太糟糕了 在 JavaScript 中使用 bind 避免闭包是一个好方法吗 现有代码 var oControl new Control var self this click function e closur
  • 我正在尝试使用 Firebase 在 Flutter 中使用 google 注销,但它不起作用

    我将 Flutter 与 Firebase 结合使用 当我尝试使用电子邮件和密码注销时 效果很好 但当我尝试使用谷歌时 它不起作用 这是我的代码 try switch user providerData 0 providerId case
  • IIS7 集成与经典管道 - 哪个使用更多 ASP.NET 线程?

    通过集成管道 所有请求都通过 ASP NET 传递 包括图像 CSS 而在经典管道中 默认情况下仅通过 ASP NET 传递对 ASPX 页面的请求 集成管道会对线程使用产生负面影响吗 假设我从 IIS 服务器请求 500 MB 二进制文件
  • Eclipse Oxygen 的 Lombok 问题

    我最近升级到了新的 Eclipse 版本 Oxygen 我从网站下载了 lombok jar 并安装了它 这就是如何eclipse ini安装后的样子 startup plugins org eclipse equinox launcher
  • Android Volley Https SSL 自签名和 Google Maps API

    我们正在使用 Android Volley 并使用可以正常工作的自认证 SSL 但现在我们想要实现 Google 地图 但它不起作用 它只是不会抛出任何错误 它只是显示一个灰色的屏幕 This is our implementation o
  • Shell脚本:在不排序的情况下查找整数序列中的最大值

    我有一个包含一长串整数的文件 10 4 66 我想使用 UNIX 命令行工具找到最大值 我知道我可以使用sort 事实上 这个问题有解决方案 使用sort 但是效率很低 需要 O N log N 和大量内存 通过一个简单的 for 循环 我