c_cpp algorithm_utils

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c_cpp algorithm_utils相关的知识,希望对你有一定的参考价值。

#pragma once
#include <map>

// return std::map's value with specified key.
// return default_value if key is not found.
template <typename target_string_t, typename K, typename V>
target_string_t ValueOr(const std::map<K, V>& data, const K& key,
	const target_string_t& default_value = target_string_t()) {
	auto iter = data.find(key);
	if (iter != data.end())
		return iter->second;
	else
		return default_value;
}
#pragma once
#include <atomic>
	
template<typename Integer>
class Incrementer {
	std::atomic<Integer> value_;
public:
	explicit Incrementer(Integer initial_value = 0) : value_(initial_value) {}
	Integer TakeAndIncrement() { return value_++; }
	void Reset(Integer initial_value = 0) { value_ = initial_value; }
};

以上是关于c_cpp algorithm_utils的主要内容,如果未能解决你的问题,请参考以下文章

c_cpp 200.岛屿数量

c_cpp 127.单词阶梯

c_cpp MOFSET

c_cpp MOFSET

c_cpp 31.下一个排列

c_cpp string→char *