数据结构和算法
JShawn
这个作者很懒,什么都没留下…
展开
-
数据结构学习
文章目录线性表顺序存储链式存储单链表静态链表循环链表双向链表栈stack栈的顺序存储栈的链式存储 线性表 顺序存储 数组,适合元素个数较稳定,多存取少删改的情景。 内存需要预先分配,占用连续内存空间。 链式存储 单链表 指针域+数据域=节点 适合多增删少存取的情景,建立:头插&尾插法。 静态链表 对于无指针的语言,类似单链表的思路实践于数组中,通过游标实现。 例题: 快速找到位置长度单链表...原创 2019-03-20 14:33:19 · 470 阅读 · 0 评论 -
经典算法代码实现 (汉诺塔、八皇后等等)
文章目录线性表递归汉诺塔八皇后 线性表 递归 汉诺塔 #include <stdio.h> //将N个盘子从x借助y移动到z void move(int n, char x, char y, char z) { if(n==1) { printf("%c-->%c\n",x,z); } else { move(n-1,x,z,y); /...原创 2019-03-21 21:27:50 · 686 阅读 · 0 评论 -
邓俊辉老师算法学习
1 排序 Gnome排序 略去大括号 naiveGnomesort( s[],n) for ( int i=1; i<n; ;) if (i<1 || s[i-1]<= s[i]) i++; else swap( s[i-1],s[i] ); i--; 顺序则前进,遇逆序则折返,直到...原创 2019-03-26 18:47:41 · 1764 阅读 · 0 评论 -
算法学习笔记
文章目录排序冒泡排序选择排序直接插入希尔排序堆排序归并排序快速排序 排序 影响排序算法性能的要素 时间性能 辅助空间 算法复杂性 冒泡排序 两两相邻的关键字,若反序则交换,直到没有反序的记录为止。 两层循环 for (i=0; i<n-1; i++) { for (j=n-1; j >i ; j--) { if (k[j-1] > k[j]) ...原创 2019-03-24 16:49:27 · 149 阅读 · 0 评论 -
新手小白leetcode刷题
Python版本 1、【1】 2 Sum 2、【15】 3 Sum class Solution: def threeSum(self, nums: List[int]) -> List[List[int]]: lst=[] if sum(nums) > 0: nums.remove(max(nums)) ...原创 2019-04-21 19:48:46 · 1370 阅读 · 0 评论 -
python使用笔记
列表 特性 列表数据类型还有很多的方法。这里是列表对象方法的清单: list.append(x) 在列表的末尾添加一个元素。相当于 a[len(a):] = [x] 。 list.extend(iterable) 使用可迭代对象中的所有元素来扩展列表。相当于 a[len(a):] = iterable 。 list.insert(i, x) 在给定的位置插入一个元素。第一个参数是要插入的元素...原创 2019-04-22 11:47:27 · 203 阅读 · 1 评论