![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
leetcode刷题笔记
文章平均质量分 52
力扣刷题。
Robert_Gordon
怕什么真理无穷,进一寸有一寸的欢喜!
展开
-
排序算法之——简单选择排序
选择排序简单选择排序简介简单选择排序算法的性能:简单选择排序代码(c++) 简单选择排序的一种选择排序的方法。 给定一个数组array[]={2,4,6,1,3},对它进行升序排序。 简单选择排序简介 简单选择排序的方法就是每次在待排序的数组中选到最小的那个数,把它放到数组中的前面。 原数组{2,4,6,1,3} 将数组中的第一个数2与数组中的其他元素进行比较,发现最小的数是1,因此将1与2的位置进行变换,得到数组[1,4,6,2,3]。 将数组中的第2个元素4与数组中的其他元素进行比较,得到最小的数是2原创 2021-01-19 15:45:01 · 308 阅读 · 0 评论 -
排序算法之——归并排序
归并排序归并排序简介归并排序算法的性能:归并排序代码(c++) 归并排序说白了是利用归并的思想实现排序的方法。 给定一个数组array[]={23,46,0,8,11,18},对它进行升序排序。 归并排序简介 快速排序的基本思想就是将问题分成许多个小的问题,进行递归求解,然后在通过合并将他们合在一起。 用一张图来形象的表示: 可以看出分为两个阶段:分 与 治 分阶段: 可以理解为通过递归来把这一数组拆分成子序列的过程。 治阶段: 就是将两个有序的子序列合并成一个有序列。 如将[4,5,7,8]和[原创 2021-01-19 14:33:21 · 364 阅读 · 0 评论 -
排序算法之——冒泡排序
冒泡排序冒泡排序简介冒泡排序算法的性能:冒泡排序代码(c++) 冒泡排序是属于交换排序的一种方法。 给定一个数组array[]={2,4,6,1,3},对它进行升序排序。 冒泡排序简介 冒泡排序的方法就是要在每趟排序过程中比较相邻的两个元素,即将小的放在前面,大的放在后面。 原数组{2,4,6,1,3} 第一次循环(将数组中最大的放到最后面) 将2和4进行比较,2<4,所以排序之后为[2,4,6,1,3] 将4和6进行比较,4<6,所以排序之后为[2,4,6,1,3] 将6和1进行比较,6&g原创 2021-01-14 19:45:13 · 194 阅读 · 1 评论 -
leetcode--双指针
这道题的思路是使用双指针: i代表从数组最左边的元素进行遍历,如果该字母不是元音字母的话,继续遍历(i++),直到遇到元音字母为止,然后进行交换。 j代表从数组最右边的元素进行遍历,同样的若数组中的尾字母不是元音字母的话(j–),继续遍历,直到遇到元音字母为止,进行交换。 代码: class Solution { public: string reverseVowels(string s) { int i=0,j=s.length()-1; while(i<j) {.原创 2020-09-05 16:51:18 · 135 阅读 · 0 评论 -
力扣刷题——移动元素
力扣中关于移动元素的算法题。 1. leetcode——27题,移动元素。 这道题看到之后有两种思路。 1、第一种思路其实很简单,就是遍历数组中的元素,将其与目标值进行比较看是否相等,若相等的话,我们可以通过c++中的erase()函数对其进行删除。 class Solution { public: int removeElement(vector<int>& nums, int val) { for(int i=0;i<nums.原创 2020-08-31 20:43:09 · 173 阅读 · 0 评论