![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
我能想到的
这个作者很懒,什么都没留下…
展开
-
插入排序
最近跳槽,老是被问到一些基本的算法,但是平时工作中很少涉及自己编写算法的情况,一时间很多基本的算法还想不起来,所以需要在这里重新进行总结,温故而知新。相信工作了几年的之后跳槽的人很多都会遇到这样的尴尬局面,知道大概,但是细想又想不起来,处于重新看一下就明白怎么回事的状态。这里追求速度简练,所以不再对算法的原理做详细的解释,因为我甚至有过经验的程序员看一眼代码就能明白是怎么回事。 1 #inc原创 2016-04-13 14:01:08 · 259 阅读 · 0 评论 -
面试题:快速排序算法和冒泡排序算法实现
1. 冒泡排序实现如下://冒泡排序算法,比较相邻元素,每次内层循环得出一个排序void bubbleSort(int arr[], int length) { for (int i = 0; i < length - 1; i++) { for (int j = 0; j < length - 1 - i; j++) { if (arr[j] > ar...原创 2018-06-05 08:20:22 · 809 阅读 · 0 评论 -
算法高频面试题1:单链表的反转核心代码
1. 链表相关的题目是比较简单的,但是一定要细心地写出代码,为了保证简单的题目回答正确,必须在纸上画图考虑。2. 单链表反转核心代码实现如下Node* reverse(Node* head) { Node* revHead = nullptr; Node* prev = nullptr; Node* cur = head; while (cur != nullptr) { N...原创 2019-06-26 11:22:26 · 361 阅读 · 0 评论 -
算法高频面试题4:链表操作相关的面试题
1. 链表属于比较基础的数据结构,看起来简单,实际上写起来并不简单,考察的是面试者的细心。2. 下面以C++语言实现一个单链表,其中囊括了大部分的单链表面试题。#include <iostream>using namespace std;class MyList { struct Node;public: //1. 构造函数,让head的value永远为NULL,...原创 2019-07-08 14:13:11 · 147 阅读 · 0 评论 -
算法高频面试题2:括号匹配算法
1. 给一串字符串,例如"a(bcbd){}";,判断(){}[]是否合法,‘({)}’是非法的, ‘({}){}’合法的。// check.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。//#include <iostream>#include <stack>using namespace std;bool check2(st...原创 2019-07-02 19:08:19 · 200 阅读 · 0 评论 -
算法高频面试题3:递归思想
1. 递归在面试题中非常常见。我所遇到的企业面试题中,几乎所有与树相关的面试题都需要用递归来解决,除了树之外,还有很大一部分其他类型的题目需要用递归来解。大致题目如下:(1)二叉树的前中后序遍历(2)二叉树最小深度(3)判读树是否为平衡二叉树……2. 递归思维,下面这篇博客介绍的非常浅显易懂。浅谈递归思想递归就这么简单3. 递归方法需要重点注意的地方,很多人都强调过...原创 2019-07-03 10:39:01 · 248 阅读 · 0 评论 -
java算法高频面试题系列5:八皇后问题
1. 问题非常简单明了,一下是百度百科对于问题的介绍。八皇后问题是一个以国际象棋为背景的问题:如何能够在 8×8 的国际象棋棋盘上放置八个皇后,使得任何一个皇后都无法直接吃掉其他的皇后?为了达到此目的,任两个皇后都不能处于同一条横行、纵行或斜线上。八皇后问题可以推广为更一般的n皇后摆放问题:这时棋盘的大小变为n1×n1,而皇后个数也变成n2。而且仅当 n2 ≥ 1 或 n1 ≥ 4 时问题有解...原创 2019-07-27 13:50:17 · 258 阅读 · 0 评论