vector std

vector应用

删除指定数字 #include<iostream> #include<vector> using namespace std; int main(){ int n,x; cin>>n; int m[n]; for(int i=0;i<n;i++){ cin>>m[i]; } vector<int> ......
vector

VECTOR INSERT()

#include <iostream> #include <vector> using namespace std; int main() { vector<int> a(20); a.push_back(1); int arr[]={1,2,3,4,5}; vector<int> b(arr,ar ......
VECTOR INSERT

使用 std::string_view 提升字符串处理性能

C++标准库提供了一个非常优秀的字符串处理类std::string,我们可以通过该类完成各种字符串操作。但是std::string有一个缺点,它的很多操作都是针对字符串实体,存在不必要的内存拷贝的代码,导致字符串的处理性能不尽如人意。 针对这种情况C++17标准引入了std::string_view ......
字符串 string_view 字符 性能 string

灵魂拷问std::enable_shared_from_this,揭秘实现原理

灵魂拷问std::enable_shared_from_this,揭秘实现原理 引言 在C++编程中,使用智能指针是一种安全管理对象生命周期的方式。std::shared_ptr是一种允许多个指针共享对象所有权的智能指针。然而,当一个对象需要获取对自身的shared_ptr时,传统的方法可能导致未定 ......

支持向量机 Support Vector Machine

b站链接【白板推导系列-支持向量机】 SVM 有三宝:间隔、对偶、核技巧 SVM 分类: hard-margin SVM 硬间隔 soft-margin SVM 软间隔 kernel SVM 核 硬间隔分类器(最大间隔分类器)max margin 判别模型: \[f(w)=sign(w^Tx+b) ......
向量 Support Machine Vector

std::io::Error, thiserror和anyhow

std::io::Error, thiserror和anyhow 读到一篇非常好的文章baoyachi大佬的<细说Rust错误处理>从Rust中怎么处理错误, 讲到怎么定义自己的错误类型, 再到如何简化错误处理流程, 再到如何统一错误处理的形式. 但是这些都是基于标准库提供功能实现的, 需要手动写一 ......
thiserror anyhow Error std io

std:forward

std::forward 在 C++ 中的主要用途是实现完美转发。它的主要好处有以下几点: 保持值类别:std::forward 能够保持函数参数的值类别(即,它是左值还是右值)。这对于保持潜在的移动语义非常重要2。 优化性能:在模板函数中,我们通常使用 std::forward 来转发函数参数,以 ......
forward std

vector的逆序删除

#include <iostream> #include <vector> #include <set> using namespace std; int main() { vector<int>test = { 1,2,2,2,3,4,2,3,2,2,63,2,99,2,2,1}; for (au ......
逆序 vector

原生并行版std::accumulate

原生并行版std::accumulate ​ 代码来自《c++并发编程实战》 #include <iostream> #include <numeric> #include <algorithm> #include <thread> #include <functional> #include <v ......
accumulate std

std::is_trivially_destructible的作用

template <class Ty> void destroy(Ty* pointer) { destroy_one(pointer, std::is_trivially_destructible<Ty>{}); } 这样设计的好处主要体现在对泛型编程和内存管理的灵活性上。下面是一些可能的好处: ......

ArravList,LinkedList,Vector的相同点与区别

ArravList,LinkedList,Vector的特性 ArrayList:动态数组,使用的时候,只需要操作即可,内部已经实现扩容机制。 线程不安全 有顺序,会按照添加进去的顺序排好 基于数组实现,随机访问速度快,插入和删除较慢一点 可以插入null元素,且可以重复 Vector和前面说的Ar ......
相同点 LinkedList ArravList Vector

Java 中ArrayList,LinkedList,Vector集合的相同点与区别是什么?

ArrayList,LinkedList和Vector都继承自List接口。ArrayList和Vector的底层是动态数组,LinkedList的底层是双向链表. ArrayList,LinkedList,Vector的区别我们先来了解ArravListArrayList:的数据结构是数组特点:查 ......
相同点 LinkedList ArrayList Vector Java

关于 vector 的用法

考虑有些时候,我们便历 vector 中相邻的两个元素: for(int i = 0;i < S.size() - 1;i++) a[i],a[i + 1]... 当 \(S.size() = 0\),我们理所当然地认为 \(i = 0,i < -1\) 这样的限制不能运行。 但是问题出在 \(S. ......
vector

Rust std fs 比 Python 慢!真的吗!?

作者:Xuanwo Databend Labs 成员,数据库研发工程师 https://github.com/xuanwo 我即将分享一个冗长的故事,从 OpenDAL 的 op.read()开始,以一个意想不到的转折结束。这个过程对我来说非常有启发性,我希望你也能感受到。我会尽力重现这个经历,并附 ......
Python Rust std fs

ArrayList、LinkedList、Vector三种Java集合框架的同义

ArrayList、LinkedList、Vector是Java集合框架中的三种数据结构,它们的相同点和不同点如下: 相同点: 都实现了List接口,可以存储有序的元素序列,可以允许重复元素的存在; 都支持随机访问(根据元素的索引访问元素),并且访问效率较高; 都支持添加、删除、修改等操作,可以动态 ......
LinkedList ArrayList 框架 Vector Java

Problem: C. Nearest vectors

题意简述: 给出一堆起点为原点的向量,找出两个向量夹角最小. 做法: 使用余弦公式和c++自带的反余弦函数,求出到每个向量到极轴的夹角,随后排序即可。 注意比较第一个向量和最后一个向量之间的夹角 点击查看代码 // Problem: C. Nearest vectors // Contest: Co ......
Problem Nearest vectors

Vector

在Java中,Vector是一个非常重要的数据结构,它是一个动态数组,可以在运行时动态地增加或减少元素。Vector的基本操作 添加元素:使用add()方法可以将元素添加到Vector的末尾。此外,add(index, element)方法可以在指定的索引处添加元素。 Vector<Integer> ......
Vector

Java集合ArrayList,LinkedList,Vector的相同点与区别是什么?

✨前言✨ 本篇作为,java集合中 ArrayList,LinkedList,Vector常用集合的分析概括,已便大家认识这三种集合的区别,和特点 🍒欢迎点赞 👍 收藏 ⭐留言评论 📝私信必回哟😁 🍒博主将持续更新学习记录收获,友友们有任何问题可以在评论区留言 @目录🍎一,特性列举🍎二 ......
相同点 LinkedList ArrayList Vector Java

C++标准库类std::packaged_task

std::packaged_task是C++11引入的标准库类,用于封装可调用对象,如函数等,并将封装对象作为异步任务进行管理,通过与std::future结合使用,完成异步任务结果的获取。 #include <iostream> #include <thread> #include <future ......
packaged_task packaged 标准 task std

C++标准库类std::shared_future

std::shared_future是C++11的标准库类,其与std::future的不同是允许多个线程使用,多个线程可以同步共享,同时其又不会阻塞等待异步任务的完成。std::shared_future同样也提供get()方法用于获取异步执行的结果。 #include <iostream> #i ......
shared_future 标准 shared future std

C++标准库函数std::async

1、std::async std::async是C++11的标准库函数,用于创建执行异步任务并返回std::future对象来获取异步执行的结果状态。该函数最简单的用法如下所示: #include <iostream> #include <thread> #include <future> std: ......
函数 标准 async std

std::future与std::promise在C++多线程同步与数据共享中的应用

1、std::promise与std::future std::promise与std::future通过配合使用完成数据的同步与共享,两者均是模板类;std::promise存储异步执行的值或异常;std::future提供可供访问的异步执行结果。二者配合使用伪码如下: std::promise< ......
线程 std promise 数据 future

【Cxx 20】使用 std::span 代替数组指针传参

我们知道std::string_view可以创建std::string的一个视图,视图本身并不拥有实例,它只是保持视图映射的状态。在不修改实例的情况下,使用std::string_view会让字符串处理的性能大幅提升。实际上,对于那些连续的序列对象我们都可以创建这样一份视图,对于std::vecto ......
数组 指针 span Cxx std

java List集合(ArrayList,LinkedList,Vector)

Hi i,m JinXiang ⭐ 前言 ⭐ 本篇文章主要介绍java List集合的三种实现类ArrayList,LinkedList,Vector以及部分理论知识 🍉欢迎点赞 👍 收藏 ⭐留言评论 📝私信必回哟😁 🍉博主收将持续更新学习记录获,友友们有任何问题可以在评论区留言 什么是L ......
LinkedList ArrayList Vector java List

不要轻易定义指向std::vector中的元素的指针

类应该是被封装的,类的用户通过接口使用类提供的功能,而不必关心类的内部如何实现。然而,C++标准库容器 std::vector 的实现渗透到了接口中来。对于以下代码: const int pushNum = 10; std::vector<int> v = { 1,2,3 }; int* p = & ......
指针 指向 元素 vector std

弄清using namespace std的作用

⭐C++标准为了和C区别开!为了正确地使用命名空间,规定头文件不使用后缀.h。 例如当我们使用<iostream.h>时,相当于在C中调用库函数。 使用using namespace std例如 1 #include 2 #include 3 #include 4 using namespace s ......
namespace 作用 using std

C++11 多线程(std::thread)实例

C++11的std::thread在C中已经有一个叫做pthread的东西来进行多线程编程,但是并不好用 (如果你认为句柄、回调式编程很实用,那请当我没说),所以c++11标准库中出现了一个叫作std::thread的东西。 std::thread常用成员函数构造&析构函数 举个栗子 例一:thre ......
线程 实例 thread std 11

std::thread方法join与detach

1、std::join std::join是std::thread类的成员函数之一,用于等待线程的执行完成。 #include <iostream> #include <utility> #include <thread> #include <chrono> #include <atomic> vo ......
方法 detach thread join std

std::function 与 std::bind解决类成员函数作为回调函数的问题

1、std::function std::function是一个模板类,其可对C++可调用的对象进行封装,比如,成员函数、静态函数等;它的基本作用是简化调用的复杂程度,归一化调用方式。 std::function<int(int, int)> int_function:声明方式为<返回值类型(参数类 ......
函数 std function 成员 问题

C++ lambda 内 std::move 失效问题的思考

最近在学习 C++ Move 时,有看到这样一个代码需求:在 lambda 中,将一个捕获参数 move 给另外一个变量。 看似一个很简单常规的操作,然而这个 move 动作却没有生效。 具体代码如下 std::vector<int> vec = {1,2,3}; auto func = [=]() ......
lambda 问题 move std
共380篇  :2/13页 首页上一页2下一页尾页