performance - 处理 "all combinations"项目的最佳方法是什么?

标签 performance algorithm

我被分配了一个学校项目,在这个项目中,我需要尽可能多地使用整数 2 3 4 和运算符 + - */%。然后我必须用 cout 输出整数以及我是如何得到答案的。例如:

cout << "2 + 3 - 4 = " << 2 + 3 - 4;

我只能在每个 cout 语句中使用每个整数一次,并且不能有重复的答案。

其他人似乎都在使用“强力”方法(即复制和粘贴相同的语句并更改数字和运算符),但这似乎效率不高。我想我会尝试一个一个地循环遍历每个数字和运算符,并检查是否已经找到答案,但我不确定最简单的方法是什么。

我想我可以使用嵌套循环,但仍然存在检查答案是否已找到的问题。我尝试将答案存储在向量中,但我无法将向量传递给用户定义的函数,该函数检查向量中是否存在值。

最佳答案

您可以使用标准模板库 (STL) 中的 maphash_map。这些结构有效地存储键值对。在使用它们之前先阅读它们,但它们可能会给你一个很好的起点。提示:您计算的整数可能会成为很好的 key 。

关于performance - 处理 "all combinations"项目的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4151025/

相关文章:

c - 如何将类图 AVL 树序列化到磁盘?

java - ExecutorService Future::变得非常慢

c++ - 获得列表中第一个大于 x 的值的有效方法?

c++ - 这是将循环锁定为每秒 60 个循环的好方法吗?

sql - 在事务中包装插入对 Sql Server 的性能有多大帮助?

algorithm - 计算其二进制表示与给定整数恰好 k 个位置不同的整数

performance - 基数排序的最佳基础

ruby - 如何使用 Ruby 有效地匹配来自 2 个数组的数据

jquery - *在*页面加载之前测试用户连接速度?

performance - Redis 最大内存策略 : performances of volatile-lru vs allkeys-lru