- 博客(9)
- 收藏
- 关注
原创 LeetCode系列:双指针法
双指针法(双循环变量法)一、快慢指针(同向指针)例1:27. 移除元素链接:https://leetcode-cn.com/problems/remove-element给你一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,并返回移除后数组的新长度。不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并原地修改输入数组。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。class Solution {public: int removeE
2021-11-15 00:04:49 161
原创 LeetCode系列:二分法
二分法求解数组问题例1:35. 搜索插入位置给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。请必须使用时间复杂度为O(log n) 的算法。链接:https://leetcode-cn.com/problems/search-insert-positionclass Solution {public: int searchInsert(vector<int>& nums, int target)
2021-11-14 20:57:37 136
原创 先进排序算法总结
一、快速排序1.1 算法思路1.2 算法描述1.3 算法实现#include<iostream>using namespace std;typedef int KeyType;struct ElemType{ KeyType key; int exist;};struct SeqList{ ElemType *elem; int length;};int Partition(SeqList &L, int a, int b){ ElemType
2021-11-08 11:37:31 995
原创 简单排序算法总结
一、折半插入排序(Binary Sort)1.1 算法思路1.2 算法流程1.3 算法实现#include<iostream>using namespace std;typedef int KeyType;struct ElemType{ KeyType key; int exist;};struct SeqList{ ElemType *elem; int length;};void BinarySort(SeqList &L){ int a
2021-11-07 18:58:13 148
原创 排序算法:冒泡排序
冒泡排序(Bubble Sort)一、算法思路二、算法流程三、算法实现#include<iostream>#include<omp.h>#include<time.h>using namespace std;typedef int KeyType;struct ElemType{ KeyType key; int exist;};struct SeqList{ ElemType *elem; int length;};void
2021-11-07 13:15:11 168
原创 排序算法:折半插入排序
折半插入排序(Binary Sort)一、算法思路二、算法流程三、算法实现#include<iostream>using namespace std;typedef int KeyType;struct ElemType{ KeyType key; int exist;};struct SeqList{ ElemType *elem; int length;};void BinarySort(SeqList &L){ int a, b, m;
2021-11-07 12:02:56 129
原创 数据结构系列文章(一):基础知识
基础知识1:程序的内存模型代码区全局区栈区堆区基础知识2:动态数组实际编程中,所需的内存空间往往取决于实际输入的数据,并非总是可以预先确定的,这样用静态数组很难解决。为了解决上述问题,C/C++提供了一些内存管理函数,这些内存管理函数结合指针可以按需要动态地分配内存空间,来构建动态数组,也可把不再使用的空间回收待用,为有效地利用内存资源提供了手段。动态数组,是相对于静态数组而言。静态数组的长度是预先定义好的,在整个程序中,一旦给定大小后就无法改变。而动态数组则不然,它可以随程序
2021-10-07 11:44:04 255
原创 基于OpenMP的并行计算
基于OpenMP的并行计算本人所有博客仅用于个人的知识积累,禁止商业与非商业用途的剽窃和抄袭,如有错误,欢迎各位大佬批评指正,一起交流讨论、共同成长。序言:本学期选修了《GPU并行计算》这门课程,借此来学习一下并行计算的硬件基础、并行程序设计思想与方法、并行算法设计与分析等内容,提高个人的编码能力和底层硬件与上层软件的联系能力。闲话不多说,我们开始吧!基于OpenMP(Open Multi-Processing)的并行程序主要是在原来的串行程序基础上,添加编译指导指令(即C/C++中需要inc
2021-10-03 00:14:38 1749
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人