随笔分类 -  数据结构

摘要:插入排序思想 假设有一个int类型,数组长度为n的数组 1.我们要保证数组下标在0~0中有序排列,这是肯定的,在0~0中只有一个数字 2.保证数组下标在0~1中有序,我们要比较下标为0与下标为1的数字,若下标为1大于下标为0的数字,就进行交换 3.保证数组下标在0~2中有序,因为下标在0~1中已经有 阅读全文
posted @ 2020-05-25 11:33 showMeTheCodes 阅读(102) 评论(0) 推荐(0) 编辑
摘要:冒泡排序思想: 假设有一个数组:int arr = {3,1,4,6,5} 第一趟 第一步:下标为0的数字与下标为1 的数字做对比,若下标为0的数字大于下标为1的数字,二者做交换 第二部:下标为1的数字与下标为2的数字做对比,若下标为1的数字大于下标为2的数字,二者做交换 。。。。。。直到最大的数字 阅读全文
posted @ 2020-05-20 17:17 showMeTheCodes 阅读(187) 评论(0) 推荐(0) 编辑
摘要:选择排序思想: 假设有一个数组,int arr = {5,2,3,1;4} 第一步:从下标0-4中找到最小数字对应的下标,与下标为0的数字进行交换 第二步:从下标1-4中找到最小数字对应的下标,与下标为1的数字进行交换 。。。。。。 最后一步:数组中最大的两个下标对应的数字作比较,谁小就把谁放到前面 阅读全文
posted @ 2020-05-20 16:49 showMeTheCodes 阅读(161) 评论(0) 推荐(0) 编辑
摘要:异或运算:相同为0,不同为1 口诀:无进位相加 异或运算的性质:①0^N==N N^N==0 ②异或运算满足交换律和结合律 练习一:如何不用额外变量交换两个数(A、B) int a = A; int b = B; int a = a^b; //A^B int b = a^b; //A^B^B = A 阅读全文
posted @ 2020-05-17 19:51 showMeTheCodes 阅读(732) 评论(0) 推荐(0) 编辑
摘要:评估算法优劣的核心指标是什么? 1.时间复杂度(流程决定) 2.额外空间复杂度(流程决定) 3.常数项时间(实现细节决定) 何为常数时间的操作? 如果一个操作的执行时间不以具体样本量为转移,每次执行时间都是固定时间,这样的操作就是常数时间的操作。 例如:①在进行加法运算时,加法所用的时间与相加的两个 阅读全文
posted @ 2020-05-17 16:03 showMeTheCodes 阅读(789) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示