Java Style的C++容器流式處理類

  • 2022 年 10 月 11 日
  • 筆記

很久没有上博客园了,最近一段时间,因为工作的关系时间上比较闲,利用闲暇时间重新翻了一下丢弃很久的C++语言。C++从98、11、14、17目前已经也走到了20版本,发生了很多变化,也引入了很多新的语言特性和库,让开发也更加的便、高效。 但用惯了Java后,发现其中Java的容器流式操作特别简单,封装 …

Continue Reading

UVA11020 Efficient Solutions

题目链接 题目 见链接。 题解 知识点:STL,思维。 首先不考虑新加入的操作,先考虑一个固定的局面,给定了所有人的两个属性值 \(L\) 和 \(C\) ,找出有竞争力的人。 这类双变量的条件一般可以画在坐标系 \(L-C\) 查看,发现如果一个点坐标到原点构成的矩形内部(包括边,但不包括这个点本 …

Continue Reading

不要使用短路邏輯編寫 stl sorter 多條件比較

  • 2022 年 6 月 28 日
  • 筆記

前言 最近工期紧、任务多,没有时间更新博客,就水一期吧。虽然是水,也不能太水,刚好最近工作中遇到一个 sorter 多条件排序的问题,花费了半天时间来定位解决,就说说它吧。 背景 公司产品是一个跨端的数据传输 sdk,当下载资源时,会先从服务器拉取一批 peer,每个 peer 是包含要下载资源分片 …

Continue Reading

C++ functional庫中的仿函數

一、仿函数简介 仿函数(functor)又称之为函数对象(function object),实际上就是 重载了()操作符 的 struct或class。 由于重载了()操作符,所以使用他的时候就像在调用函数一样,于是就被称为“仿”函数啦。 二、仿函数简要写法示例 一个很正常的需求,定义一个仿函数作为 …

Continue Reading

2022GDUT寒假專題學習-1 B,F,I,J題

  • 2022 年 1 月 20 日
  • 筆記

专题链接: 专题学习1 - Virtual Judge (vjudge.net) B - 全排列 题目 思想 这道题可以用DFS进行求解,但是一看到全排列,其实可以立刻想到一个STL函数: next_permutation(x.begin(),x.end()) (头文件#include )。 此函数 …

Continue Reading

STL----vector注意事項

  • 2021 年 6 月 26 日
  • 筆記

开vector时要注意内存容易炸 最好的办法就是在开vector之后,对他进行一步操作 vector< int > a; a.resize(n); n就是你要开的数组的大小,此时数组里已经插入了n个零,占内存空间也只有n个int 还有另外一种方法 vector< int > a; a.reserve &hellip;

Continue Reading

C++中使用sort對常見容器排序

  • 2021 年 5 月 20 日
  • 筆記

本文主要解决以下问题 STL中sort的使用方法 使用sort对vector的排序 使用sort对map排序 使用sort对list排序 STL中sort的使用方法 C++ STL 标准库中的 sort() 函数,本质就是一个模板函数。该函数专门用来对容器或普通数组中指定范围内的元素进行排序,排序规 &hellip;

Continue Reading