反转一个单链表。 示例: 输入: 1->2->3->4->5->NULL 输出: 5->4->3->2->1->NULL 进阶: 你可以迭代或递归地反转链表。你…
标签:数据结构
安卓算法08-回溯法:面试最常见问题
算法08-回溯法:面试最常见问题 一、介绍 回溯法(探索与回溯法)是一种选优搜索法,又称为试探法,按选优条件向前搜索,以达到目标。但当探索到某一步时,发现原先选择并不优或达不到目标,就退回一步重新选择,这种走不通就退回再…
排序算法对比总结-Python
 …
安卓算法05-减治法
算法05-减治法 一、介绍 减治法是每一步都能缩小一定的问题规模(-1,-k,-n/2等),最后变成1个最小的小问题。 减治法常见应用:堆排序、深度优先查找。 二、堆排序 1、基本思想 堆排序:基于完全二叉树的升序排序。…
Algorithms 算法学习笔记20180413
从昨天的Sorting动图和思路中,可以看到,每种排序算法都有各自的特点,其中我最感兴趣的是Merge Sort,就是归并排序,它将规模为N的序列拆分出若干子序列,这样,每个子序列只需要进行小规模的排序即可,减少了总的运…
指针之美
指针之美 看到CSDN 网站论坛上有一个专题《指针的危害》,许多人提出了不同的看法,我基本上都不赞同,所以忍不住要提出我的看法。 说指针是天使者只说了指针的高效率;说指针是魔鬼者则认为指针容易致命的错误,应…
BZOJ-2748: [HAOI2012]音量调节(DP)
题目:http://www.lydsy.com/JudgeOnline/problem.php?id=2748 额。。。裸裸的DP,直接推一次就好了额。。。 代码: #include <cstdio> #in…
深入解析Bellman Ford's Algorithm,高效解决含有负权重图中的最短路径问题
概述 Bellman Ford算法可以用来解决加权图中的最短路径问题。其与Dijkstra算法的区别在于Belllman Ford算法的应用范围更广,例如其可以用来处理带有负权重的加权图中的最短路径问题。由于Dijkst…
Go语言数据结构和算法-LinkedList(链表)
Go语言数据结构和算法-LinkedList(链表) Prepend(item) // 在链表头新增一个元素 Append(item) // 在链表尾追加一个元素 InsertAt(i,item) // 在索引i处插入一…
程序员进阶之算法练习(三十五)LeetCode专场
前言 LeetCode上的题目是大公司面试常见的算法题,今天的目标是拿下5道算法题: 题目1是基于链表的大数加法,既考察基本数据结构的了解,又考察在处理加法过程中的边界处理; 题目2是求数组出现频率前k大的数字,考察思维…
优秀的程序猿解题之 LeetCode 第三题:Longest Substring Without Repeating Characters
Tips:所有代码实现包含三种语言(java、c++、python3) 题目 Given a string, find the length of the longest substring without repeat…
Python数据结构实现图
图 图是由边或者弧连接起来的节点的网络。在有向图中,节点之间的连接是有方向的,叫做弧(arcs)。在无向图中,节点间的连接没有方向,叫做边(edge)。图算法包括查找两点间路径、两点间的最短路径、判断一个图中是否存在环(…