自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 利用 SYCL 实现高效的矩阵乘法

本文将介绍如何使用 SYCL,一种基于 C++ 的单源异构编程模型,来实现矩阵乘法。我们将从读取矩阵数据开始,接着进行矩阵转置,然后执行矩阵乘法,并最终测量整个操作的时长。然后,我们定义三个缓冲区(Buffer),分别用于存储两个输入矩阵和一个输出矩阵。这里的并行计算模型允许我们同时处理输出矩阵的每个元素,大幅提高计算效率。由于矩阵乘法的特性,将第二个矩阵(我们称之为矩阵 B)转置可以提高最终乘法操作的效率。首先,我们需要从文件中读取两个矩阵的数据。函数实现,该函数将矩阵 B 的行列互换,以便于后续计算。

2023-12-03 16:53:58 544 1

原创 算法笔记:Codeup_最短路径_问题 C: 最短路径

题目描述 N个城市,标号从0到N-1,M条道路,第K条道路(K从0开始)的长度为2^K,求编号为0的城市到其他城市的最短距离。 输入 第一行两个正整数N(2<=N<=100)M(M<=500),表示有N个城市,M条道路, 接下来M行两个整数,表示相连的两个城市的编号。 输出 N-1行,表示0号城市到其他城市的最短路,如果无法到达,输出-1,数值太大的以MOD 100000 的结果输出。 思路:难点在于最多会有500条道路,用int储存变量最多也就表示到2的31次方也就是第31条

2022-03-20 22:36:51 496

原创 【codeup】问题 D: 【递归入门】n皇后 问题(原始的8皇后问题)

【codeup】问题 D: 【递归入门】n皇后 问题(原始的8皇后问题)

2022-03-11 23:13:42 121

原创 复习5 平衡二叉树(AVL树)

平衡因子:左子树与右子树高度之差。 平衡因子的绝对值不超过1的二叉查找树。 1.树结构 struct node{ int v , height; node *lChild , *rChild; }; 2.新建结点 node* newNode(int v){ node* Node = new node; Node->v = v; Node->height = 1; Node->lChild = Node->rChild =

2021-12-24 16:16:39 289

原创 复习4 二叉查找树(BST)

左子树右子树都是二叉查找树,左子树数据域均小于根节点,右子树数据域均大于根节点。 1.查找操作 void Search(node* root , int x){ if(root == NULL) { printf("Search Failed!\n"); return; } if(root->data == x){ printf("%d\n",root->data); }else if(root->dat

2021-12-24 15:11:30 401

原创 复习3 二叉树

1.二叉树结构 struct node{ typename data; node* lChild; node* rChild; } 2.新建结点 node* newNode(int v){ node* Node = new node; Node->data = v; Node->lChild = Node->rChild = NULL; return Node; } 3.二叉树查找修改 void Search(node

2021-12-24 14:32:44 44

原创 复习2 快速幂

typedef long long LL ; LL binaryPow(int num , int b , int mod){ if(b == 0) return 1; else if(b%2 == 1){ return num * binaryPow(num ,b-1 ,mod) % mod; }else{ LL mul = binaryPow(num , b/2 , mod); return mul*mul % mod; .

2021-12-24 11:26:45 289

原创 复习_1 排序

1.选择排序 假设数组A[ ],大小为n,假设前0 - (i-1)位已有序,从i - n找出最小值与i位交换; void selectSort(){ for(int i = 0;i <= n;i++){ int k = i; for(int j = i; j <= n; j++){ if(A[j] < A[k]){ k = j;//找到下标i到n的最小值...

2021-12-24 11:15:22 145

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除