C++算法inner_product ()和 inplace_merge()

算法名称inner_product
参数第一个容器的起始位置,第一个容器的结束位置,第二个容器开始位置,初始值
返回值返回跟初始值相同类型的返回值
作用将第一个容器的第一个元素于第二个容器的第一个元素相乘,类推,然后将相乘后的值相加,得出最后返回值。(内积)
算法名称inplace_merge
参数容器的开始,容器的中间值,容器的结尾
返回值void
作用将容器内的元素合并,但是容器中间值两边都得是有序的。

#include <iostream>
#include <vector>		//动态数组
#include <deque>		//双端队列
#include <algorithm>	
#include <numeric>		
#include <time.h>		
using namespace std;

void showArr(vector<int> Arr)
{
	vector<int>::iterator iteArr = Arr.begin();
	for (iteArr ; iteArr != Arr.end(); iteArr++)
	{
		cout << *iteArr << "\t";
	}
	cout << endl;
}

vector<int> createStaticArr3()
{
	vector<int> vectorInt;
	vectorInt.push_back(1);
	vectorInt.push_back(2);
	vectorInt.push_back(3);
	showArr(vectorInt);
	return vectorInt;
}

void main()
{
	vector<int> arr1 = createStaticArr3();
	cout << endl;
	vector<int> arr2 = createStaticArr3();
	cout << endl;
	cout << " 内积为: " << inner_product(arr1.begin(), arr1.end(), arr2.begin(), 0)
	<< endl; 
	vector<int> arr3 = { 0,2,3,4,1,2,3 };
	inplace_merge(arr3.begin(), arr3.begin()+4, arr3.end());
	showArr(arr3);
}

//结果:
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在R语言中,`merge()`函数和`inner_join()`函数都可以用于合并(连接)两个数据框。它们的主要区别在于语法和执行方式。 `merge()`函数是R的基本函数,可以根据指定的键(或多个键)将两个数据框进行合并。它可以根据键的匹配方式,分为内连接、外连接、左连接和右连接等不同类型。在默认情况下,`merge()`函数执行内连接(inner join),即只保留两个数据框中键匹配的行。 以下是使用`merge()`函数进行内连接的示例: ```R merged_df <- merge(df1, df2, by = "key") ``` 其中,`df1`和`df2`是要合并的两个数据框,`by`参数指定了用于匹配的键。这将返回一个新的数据框`merged_df`,其中只包含`df1`和`df2`中键匹配的行。 而`inner_join()`函数则是dplyr包中提供的函数,它也执行内连接操作。相比于`merge()`函数,`inner_join()`函数提供了更简洁的语法,并且可以方便地与其他dplyr包中的函数进行链式操作。 以下是使用`inner_join()`函数进行内连接的示例: ```R library(dplyr) merged_df <- inner_join(df1, df2, by = "key") ``` 同样,`df1`和`df2`是要合并的两个数据框,`by`参数指定了用于匹配的键。这将返回一个新的数据框`merged_df`,其中只包含`df1`和`df2`中键匹配的行。 总结来说,`merge()`函数是R的基本函数,可以执行不同类型的连接操作,而`inner_join()`函数是dplyr包中提供的函数,用于执行内连接操作,并提供了更简洁的语法和链式操作的能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值