- 博客(3)
- 收藏
- 关注
原创 插入排序移动次数
hackerrank上的一道题,求插入排序过程中数组元素的移动次数。本题的实质是其实是经典的逆序对问题,逆序对是指那些i a[j]的数对。最朴素的办法是两层循环扫描,复杂度为O(n^2)。逆序对问题的经典解法是使用归并排序的思想。在合并两个有序数组a和b的过程中,从尾部开始逆向迭代,若发现a[i] > b[j],则所有b[j]之前的元素都小于a[i]。#include using
2014-01-15 11:29:37 3661
原创 androguard中androdd文件名过长bug
最近做android应用的分析,用到了androguard。这是一个相当强大的android逆向工程和静态分析工具,使用python编写,其中的androdd.py用来生成apk文件的每个类的方法调用图,可以生成png,jpg以及dot文件。在这里有一个bug,由于androdd.py中使用如下方法生成文件名:filename = output_name + valid_class_name(
2014-01-10 17:54:23 1121 1
原创 C++ 标准库迭代循环变量类型
今天做hackermeter上一题的时候用到string的逆向迭代,开始使用了如下循环:for (string::size_type i = s.size() - 1; i >= 0; i++)出现segmentation fault, 单步调试的时候发现此循环是死循环,才意识到string::size_type类型是无符号的,因此i是永远不小于0的。解决办法有两个:如果确认strin
2014-01-09 23:21:26 568
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人