竞赛中的一些常用函数
2013-01-12 20:01
288 查看
主要说一些课堂上没有讲但ACM竞赛中常用的一些函数
1、memset():在<string.h>中,函数声明为
比如:
2、sort():在C++中由<algorithm>声明,时间复杂度是n*log(n),默认升序。比如sort(a,a+10)表示将以数组a的前10个元素升序排列。这是简单的表示 。 完整表示为sort(a,a+10,less<int>());于此对应的降序表示为sort(a,a+10,greater<int>())。 sort()只能对简单元素的数组进行排序,若要对结构体按照某一种元素进行排序,则要用到qsort(数组名,元素个数,元素大小(sizeof),比较函数名),头文件为<iostream>.比较函数写法如下:
3、时间函数clock(),在头文件<time.h>中声明,该函数在程序运行完成后对程序的时间复杂度进行度量,因硬件的不同而不同,即使在同一台机器上也会有所差异。函数头为clock_t clock(void)返回硬件滴答数,一般为毫秒(long 类型),除以CLK_TCK CLOCKS_PER_SEC换算成秒(即1000)
1、memset():在<string.h>中,函数声明为
void *memset( void *dest, //数组头指针 int c, //将数组变为的字符 size_t count //数组长度 );//函数返回修改数组的指针
比如:
#include<stdio.h> #include <string.h> int mian() { char data[]="This is a test of the memset function"; printf("Before:%s\n",data); memset(data,'*',4); printf("After:%s\n",data); } /* output Before: This is a test of the memset function After: **** is a test of the memset function */
2、sort():在C++中由<algorithm>声明,时间复杂度是n*log(n),默认升序。比如sort(a,a+10)表示将以数组a的前10个元素升序排列。这是简单的表示 。 完整表示为sort(a,a+10,less<int>());于此对应的降序表示为sort(a,a+10,greater<int>())。 sort()只能对简单元素的数组进行排序,若要对结构体按照某一种元素进行排序,则要用到qsort(数组名,元素个数,元素大小(sizeof),比较函数名),头文件为<iostream>.比较函数写法如下:
int compare(const void *a,const void *b) { return *(int *)b-*(int *)a; }//降序,可按结构体某一元素降序排列 int compare (const void *a,const void *b) { return *(int *)a-*(int *)b; } //shengxu
3、时间函数clock(),在头文件<time.h>中声明,该函数在程序运行完成后对程序的时间复杂度进行度量,因硬件的不同而不同,即使在同一台机器上也会有所差异。函数头为clock_t clock(void)返回硬件滴答数,一般为毫秒(long 类型),除以CLK_TCK CLOCKS_PER_SEC换算成秒(即1000)
#include <stdio.h> #include <time.h> int main() { long start,end; start=clock(); for(int i=0;i<10;i++) for(int j=0;j<1000;j++) printf("%d %d\n",i,j); end=clock(); printf("end-start=%ld\n",end-start); printf("end-start=%ld\n",(end-start)/1000); return 0; }
相关文章推荐
- Tensorflow一些常用基本概念与函数(1)
- 随手记录一些常用的函数
- 数据库与C#控件接口,以及一些常用函数
- oracle一些常用的函数(substr,日期加减问题)之我见
- STL中常用的一些算法函数[持续更新]
- Python一些不常用的函数的收集
- Tensorflow一些常用基本概念与函数(1)
- 字符串的一些常用操作函数
- 最近在学习MFC,常用的一些函数【陆续更新中……】
- 一些常用的JS函数
- [matlab]mathworks上的cody challenge题解及一些常用函数的总结(3)
- Oracle学习笔记之二SQL更新数据和一些常用函数
- 一些常用的JS自定义函数整理
- 一些常用函数名
- 一些自定义的Lua常用的工具函数
- C++ 一些常用的函数以及头文件(一)
- Tensorflow一些常用基本概念与函数
- (转的)c# 常用的一些函数
- 一些常用的原生js方法(函数)
- Tensorflow一些常用基本概念与函数