1.1-时间记录以及多项式的秦九韶公式

2023-10-07 06:20

本文主要是介绍1.1-时间记录以及多项式的秦九韶公式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

第一个fx是多项式的一般式,第二个是秦九韶公式。。

秦九韶公式效率更高,更快。

在这里插入图片描述
接下来说一下ctime的计时工具:

ctime里定义的CLK_TCK,其值每个电脑不一样,我的电脑输出它后显示1000;

clock_t start,stop; clock_t这个是数据类型,定义了两个变量用来存储起始时间和终止时间

timee=((double)(stop-start))/CLK_TCK; 终点减去起点转换为double再除以CLK_TCK将其转换为秒数。

start=clock();//计算从main函数到当前的时间
stop=clock();//计算main函数到当前的时间
clock()函数在ctime头文件中定义。

注意:计算函数运行时间最好将函数放在start和stop之间
输出时间是最好%e,用科学计数法表示。若输出结果为零,是因为时间实在太短,介意将其放入循环重复执行,最后再除以循环次数即可。。

#include <iostream>
#include <cstdio>
#include <string>
#include <vector>
#include <queue>
#include <ctime>
#include <cmath>
#include <algorithm>
using namespace std;
typedef long long ll;
#define maxn 10005
#define mod 7654321//普通算法
double f(int n,double a[],double x)
{int i;double p=a[0];for(i=1;i<=n;i++){p+=(a[i]*pow(x,i));}return p;
}//秦九昭公式
double ff(int n,double a[],double x)
{double p=a[n];for(int i=n;i>0;i--){p=a[i-1]+x*p;}return p;
}
//clock()函数 头文件为ctime
//clock_t是clock()函数的类型 start和stop是该类型的两个变量
clock_t start,stop;
//存储秒数
double timee;int main()
{//在start和stop之间放函数测时间double a[101];double x=1.5;for(int i=0;i<=100;i++){a[i]=double(i);}start=clock();//计算从main函数到当前的时间for(int i=0;i<1e7;i++)f(100,a,x);stop=clock();//计算main函数到当前的时间timee=((double)(stop-start))/CLK_TCK;//计算秒数  ctime里定义的CLK_TCK//cout<<CLK_TCK<<endl;printf("ticks=%.6lf\n",(double)(stop-start));printf("timee=%6.2e\n",timee);start=clock();for(int i=0;i<1e7;i++)ff(100,a,x);stop=clock();timee=((double)(stop-start))/CLK_TCK/1e7;printf("ticks=%.6lf\n",(double)(stop-start));printf("timee=%6.2e\n",timee);return 0;
}

这篇关于1.1-时间记录以及多项式的秦九韶公式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/156616

相关文章

国内环境搭建私有知识问答库踩坑记录(ollama+deepseek+ragflow)

《国内环境搭建私有知识问答库踩坑记录(ollama+deepseek+ragflow)》本文给大家利用deepseek模型搭建私有知识问答库的详细步骤和遇到的问题及解决办法,感兴趣的朋友一起看看吧... 目录1. 第1步大家在安装完ollama后,需要到系统环境变量中添加两个变量2. 第3步 “在cmd中

MySQL 日期时间格式化函数 DATE_FORMAT() 的使用示例详解

《MySQL日期时间格式化函数DATE_FORMAT()的使用示例详解》`DATE_FORMAT()`是MySQL中用于格式化日期时间的函数,本文详细介绍了其语法、格式化字符串的含义以及常见日期... 目录一、DATE_FORMAT()语法二、格式化字符串详解三、常见日期时间格式组合四、业务场景五、总结一、

Spring Retry 实现乐观锁重试实践记录

《SpringRetry实现乐观锁重试实践记录》本文介绍了在秒杀商品SKU表中使用乐观锁和MybatisPlus配置乐观锁的方法,并分析了测试环境和生产环境的隔离级别对乐观锁的影响,通过简单验证,... 目录一、场景分析 二、简单验证 2.1、可重复读 2.2、读已提交 三、最佳实践 3.1、配置重试模板

在 Spring Boot 中使用异步线程时的 HttpServletRequest 复用问题记录

《在SpringBoot中使用异步线程时的HttpServletRequest复用问题记录》文章讨论了在SpringBoot中使用异步线程时,由于HttpServletRequest复用导致... 目录一、问题描述:异步线程操作导致请求复用时 Cookie 解析失败1. 场景背景2. 问题根源二、问题详细分

如何利用Java获取当天的开始和结束时间

《如何利用Java获取当天的开始和结束时间》:本文主要介绍如何使用Java8的LocalDate和LocalDateTime类获取指定日期的开始和结束时间,展示了如何通过这些类进行日期和时间的处... 目录前言1. Java日期时间API概述2. 获取当天的开始和结束时间代码解析运行结果3. 总结前言在J

关于Spring @Bean 相同加载顺序不同结果不同的问题记录

《关于Spring@Bean相同加载顺序不同结果不同的问题记录》本文主要探讨了在Spring5.1.3.RELEASE版本下,当有两个全注解类定义相同类型的Bean时,由于加载顺序不同,最终生成的... 目录问题说明测试输出1测试输出2@Bean注解的BeanDefiChina编程nition加入时机总结问题说明

修改若依框架Token的过期时间问题

《修改若依框架Token的过期时间问题》本文介绍了如何修改若依框架中Token的过期时间,通过修改`application.yml`文件中的配置来实现,默认单位为分钟,希望此经验对大家有所帮助,也欢迎... 目录修改若依框架Token的过期时间修改Token的过期时间关闭Token的过期时js间总结修改若依

Go Mongox轻松实现MongoDB的时间字段自动填充

《GoMongox轻松实现MongoDB的时间字段自动填充》这篇文章主要为大家详细介绍了Go语言如何使用mongox库,在插入和更新数据时自动填充时间字段,从而提升开发效率并减少重复代码,需要的可以... 目录前言时间字段填充规则Mongox 的安装使用 Mongox 进行插入操作使用 Mongox 进行更

对postgresql日期和时间的比较

《对postgresql日期和时间的比较》文章介绍了在数据库中处理日期和时间类型时的一些注意事项,包括如何将字符串转换为日期或时间类型,以及在比较时自动转换的情况,作者建议在使用数据库时,根据具体情况... 目录PostgreSQL日期和时间比较DB里保存到时分秒,需要和年月日比较db里存储date或者ti

将sqlserver数据迁移到mysql的详细步骤记录

《将sqlserver数据迁移到mysql的详细步骤记录》:本文主要介绍将SQLServer数据迁移到MySQL的步骤,包括导出数据、转换数据格式和导入数据,通过示例和工具说明,帮助大家顺利完成... 目录前言一、导出SQL Server 数据二、转换数据格式为mysql兼容格式三、导入数据到MySQL数据