![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
lukeyewu
这个作者很懒,什么都没留下…
展开
-
《算法第四版》学习:动态连通性
问题描述:给定了一组原始数据对,每个数据对<p, q>表示点p和点q相连。输入新的数据对<x,y>, 判断x,y是否已经在原始数据对中相连,如果不是,则输出x,y。 这个问题有很多的变形,比如A认识B,A认识C,那么A是C的间接好友,如果有很多的这种人物关系当做原始数据集,再让判断新输入的两个人是否是间接好友,则就可以用这里的动态连接性。最慢的实现方法: quick_...原创 2019-05-16 21:18:35 · 182 阅读 · 0 评论 -
《算法第四版》学习:求输入字符串所代表的算术表达式的值
Dijkstra方法创建了两个栈,一个用来存放运算符 ops,一个存放操作数 vals,遇到左括号跳过,遇到右括号将vals栈顶的两个元素执行ops栈顶的操作。package com.chap1.algorithm;import java.util.Stack;import edu.princeton.cs.algs4.StdIn;public class DijkstraEvalua...原创 2019-05-08 21:59:31 · 471 阅读 · 0 评论 -
7种排序算法汇总
排序算法1. 冒泡排序 平均时间复杂度O(n2)O(n2)O(n^2) ( 最好O(n)O(n)O(n),最差O(n2)O(n2)O(n^2) ) 空间复杂度O(1)O(1)O(1) 稳定排序 代码如下void BubbleSort(vector&amp;amp;lt;int&amp;amp;gt;&amp;amp;amp; vec){ if (vec.size原创 2018-09-13 20:17:04 · 954 阅读 · 0 评论 -
Top K 问题的几种解法
1. 先排序后取K个数。 时间复杂度O(nlgn).vector<int> FindSmallestKNum(vector<int> &vec, int k){ if (vec.size() < k) return vector<int>(); sort(vec.begin(), vec.end()); return vect...原创 2018-08-22 17:16:50 · 997 阅读 · 0 评论 -
C++带特殊符号的标准输入读取方法
近期秋招,做了不少的笔试,发现在使用C++语言按照题目要求读取数据时,由于操作不熟练,导致浪费了很多的时间。痛定思痛,决定总结一下该如何读取数据,以便下次参照使用。要求:读入M行整数,行内相邻数据间用英文逗号“,” 隔开。例如 代码如下:#include <iostream>#include <sstream>#include <vector...原创 2018-08-14 22:46:48 · 6144 阅读 · 0 评论 -
求无序数组中最大的K个数 或 第K大的数
1、方法一:要求无序数组中没有重复元素,同时允许更改数组内的内容。主要思想是利用快速排序Partition函数依次进行前K个元素的排序,平均时间复杂度O(n)。#include <iostream> #include <string> #include <stack> #include <fstream>#include <ss...原创 2018-03-16 20:09:13 · 2663 阅读 · 0 评论 -
二分查找,快速排序,归并排序,堆排序
1. 二分查找的递归版本。int BinarySearchRecur(vector<int> &v1, int searchNum, int sIdx, int eIdx){ int ret = -1; int midIdx = sIdx + ( (eIdx - sIdx) >> 1 ); if (sIdx <= eIdx) // 一定要加上,不...原创 2018-03-25 22:00:43 · 665 阅读 · 0 评论 -
《算法第四版》学习:统计一个随机字符串数组中,重复的字符串的个数,以及重复的字符串
获取长为k的随机字符串组成的数组,数组长度为Npublic static String[] getKLengthStrings(int N, int k) { if(N<=0) return null; String[] strings = new String[N]; char[] cs = new char[k]; for(int ii=0; ii<...原创 2019-05-13 15:15:46 · 1125 阅读 · 0 评论