11 2019 档案
摘要:tinyctf-2014 elrond32 1 int __cdecl main(int a1, char **arg_input) 2 { 3 if ( a1 > 1 && check_8048414(arg_input[1], 0) ) 4 { 5 puts("Access granted");
阅读全文
摘要:6-10 中序输出度为2的结点 (10 分) 本题要求实现一个函数,按照中序遍历的顺序输出给定二叉树中度为2的结点。 函数接口定义: void InorderPrintNodes( BiTree T); T是二叉树树根指针,InorderPrintNodes按照中序遍历的顺序输出给定二叉树T中度为2
阅读全文
摘要:6-9 中序输出度为1的结点 (10 分) 本题要求实现一个函数,按照中序遍历的顺序输出给定二叉树中度为1的结点。 函数接口定义: void InorderPrintNodes( BiTree T); T是二叉树树根指针,InorderPrintNodes按照中序遍历的顺序输出给定二叉树T中度为1的
阅读全文
摘要:6-7 求二叉树的深度 (6 分) 本题要求实现一个函数,可返回二叉树的深度。 函数接口定义: int Depth(BiTree T); T是二叉树树根指针,函数Depth返回二叉树的深度,若树为空,返回0。 裁判测试程序样例: #include <stdio.h> #include <stdlib
阅读全文
摘要:6-8 中序输出叶子结点 (10 分) 本题要求实现一个函数,按照中序遍历的顺序输出给定二叉树的叶结点。 函数接口定义: void InorderPrintLeaves( BiTree T); T是二叉树树根指针,InorderPrintLeaves按照中序遍历的顺序输出给定二叉树T的叶结点,格式为
阅读全文
摘要:6-6 二叉树的层次遍历 (6 分) 本题要求实现给定的二叉树的层次遍历。 函数接口定义: void Levelorder(BiTree T); T是二叉树树根指针,Levelorder函数输出给定二叉树的层次遍历序列,格式为一个空格跟着一个字符。 其中BinTree结构定义如下: typedef
阅读全文
摘要:6-4 统计二叉树度为2的结点个数 (11 分) 本题要求实现一个函数,可统计二叉树中度为2的结点个数。 函数接口定义: int NodeCount ( BiTree T); T是二叉树树根指针,函数NodeCount返回二叉树中度为2的结点个数,若树为空,返回0。 裁判测试程序样例: #inclu
阅读全文
摘要:6-5 二叉树的三种遍历(先序、中序和后序) (6 分) 本题要求实现给定的二叉树的三种遍历。 函数接口定义: void Preorder(BiTree T); void Inorder(BiTree T); void Postorder(BiTree T); T是二叉树树根指针,Preorder、
阅读全文
摘要:6-3 统计二叉树度为1的结点个数 (10 分) 本题要求实现一个函数,可统计二叉树中度为1的结点个数。 函数接口定义: int NodeCount ( BiTree T); T是二叉树树根指针,函数NodeCount返回二叉树中度为1的结点个数,若树为空,返回0。 裁判测试程序样例: #inclu
阅读全文
摘要:6-2 统计二叉树叶子结点个数 (10 分) 本题要求实现一个函数,可统计二叉树的叶子结点个数。 函数接口定义: int LeafCount ( BiTree T); T是二叉树树根指针,函数LeafCount返回二叉树中叶子结点个数,若树为空,则返回0。 裁判测试程序样例: #include <s
阅读全文
摘要:6-1 统计二叉树结点个数 (10 分) 本题要求实现一个函数,可统计二叉树的结点个数。 函数接口定义: int NodeCount ( BiTree T); T是二叉树树根指针,函数NodeCount返回二叉树中结点个数,若树为空,返回0。 裁判测试程序样例: #include <stdio.h>
阅读全文
摘要:6-9 单链表分段逆转 (25 分) 给定一个带头结点的单链表和一个整数K,要求你将链表中的每K个结点做一次逆转。例如给定单链表 1→2→3→4→5→6 和 K=3,你需要将链表改造成 3→2→1→6→5→4;如果 K=4,则应该得到 4→3→2→1→5→6。 函数接口定义: void K_Reve
阅读全文
摘要:6-8 线性表元素的区间删除 (20 分) 给定一个顺序存储的线性表,请设计一个函数删除所有值大于min而且小于max的元素。删除后表中剩余元素保持顺序存储,并且相对位置不能改变。 函数接口定义: List Delete( List L, ElementType minD, ElementType
阅读全文
摘要:6-7 求链表的倒数第m个元素 (20 分) 请设计时间和空间上都尽可能高效的算法,在不改变链表的前提下,求链式存储的线性表的倒数第m(>)个元素。 函数接口定义: ElementType Find( List L, int m ); 其中List结构定义如下: typedef struct Nod
阅读全文
摘要:6-6 数组元素的区间删除 (20 分) 给定一个顺序存储的线性表,请设计一个函数删除所有值大于min而且小于max的元素。删除后表中剩余元素保持顺序存储,并且相对位置不能改变。 函数接口定义: int Delete( int A[], int L, int minA, int maxA ); 其中
阅读全文
摘要:6-5 两个有序链表序列的合并 (15 分) 本题要求实现一个函数,将两个链表表示的递增整数序列合并为一个非递减的整数序列。 函数接口定义: List Merge( List L1, List L2 ); 其中List结构定义如下: typedef struct Node *PtrToNode; s
阅读全文
摘要:6-4 递增的整数序列链表的插入 (15 分) 本题要求实现一个函数,在递增的整数序列链表(带头结点)中插入一个新整数,并保持该序列的有序性。 函数接口定义: List Insert( List L, ElementType X ); 其中List结构定义如下: typedef struct Nod
阅读全文
摘要:6-3 链表逆置 (20 分) 本题要求实现一个函数,将给定单向链表逆置,即表头置为表尾,表尾置为表头。链表结点定义如下: struct ListNode { int data; struct ListNode *next; }; 函数接口定义: struct ListNode *reverse(
阅读全文
摘要:6-2 带头结点的链式表操作集 (20 分) 本题要求实现带头结点的链式表操作集。 函数接口定义: List MakeEmpty(); Position Find( List L, ElementType X ); bool Insert( List L, ElementType X, Positi
阅读全文
摘要:6-1 求链式表的表长 (10 分) 本题要求实现一个函数,求链式表的表长。 函数接口定义: int Length( List L ); 其中List结构定义如下: typedef struct LNode *PtrToLNode; struct LNode { ElementType Data;
阅读全文
摘要:7-3 输出数组元素 (15 分) 本题要求编写程序,对顺序读入的n个整数,顺次计算后项减前项之差,并按每行三个元素的格式输出结果。 输入格式: 输入的第一行给出正整数n(1)。随后一行给出n个整数,其间以空格分隔。 输出格式: 顺次计算后项减前项之差,并按每行三个元素的格式输出结果。数字间空一格,
阅读全文
摘要:7-1 将数组中的数逆序存放 (20 分) 本题要求编写程序,将给定的n个整数存入数组中,将数组中的这n个数逆序存放,再按顺序输出数组中的元素。 输入格式: 输入在第一行中给出一个正整数n(1)。第二行输入n个整数,用空格分开。 输出格式: 在一行中输出这n个整数的处理结果,相邻数字中间用一个空格分
阅读全文
摘要:7-2 找出不是两个数组共有的元素 (20 分) 给定两个整型数组,本题要求找出不是两者共有的元素。 输入格式: 输入分别在两行中给出两个整型数组,每行先给出正整数N(≤),随后是N个整数,其间以空格分隔。 输出格式: 在一行中按照数字给出的顺序输出不是两数组共有的元素,数字间以空格分隔,但行末不得
阅读全文
摘要:6-6 利用指针找最大值 (10 分) 本题要求实现一个简单函数,找出两个数中的最大值。 函数接口定义: void findmax( int *px, int *py, int *pmax ); 其中px和py是用户传入的两个整数的指针。函数findmax应找出两个指针所指向的整数中的最大值,存放在
阅读全文
摘要:6-5 有序数组的插入 (20 分) 本题要求将任一给定元素插入从大到小排好序的数组中合适的位置,以保持结果依然有序。 函数接口定义: bool Insert( List L, ElementType X ); 其中List结构定义如下: typedef int Position; typedef
阅读全文
摘要:6-4 冒泡排序 (10 分) 编程实现冒泡排序函数。void bubbleSort(int arr[], int n);。其中arr存放待排序的数据,n为数组长度(1≤n≤1000)。 函数接口定义如下: /* 对长度为n的数组arr执行冒泡排序 */ void bubbleSort(int ar
阅读全文
摘要:6-3 报数 (20 分) 报数游戏是这样的:有n个人围成一圈,按顺序从1到n编好号。从第一个人开始报数,报到m(<)的人退出圈子;下一个人从1开始报数,报到m的人退出圈子。如此下去,直到留下最后一个人。 本题要求编写函数,给出每个人的退出顺序编号。 函数接口定义: void CountOff( i
阅读全文
摘要:6-2 数组循环右移 (20 分) 本题要求实现一个对数组进行循环右移的简单函数:一个数组a中存有n(>)个整数,将每个整数循环向右移m(≥)个位置,即将a中的数据由(a0a1⋯an−1)变换为(an−m⋯an−1a0a1⋯an−m−1)(最后m个数循
阅读全文
摘要:6-1 简单求和 (10 分) 本题要求实现一个函数,求给定的N个整数的和。 函数接口定义: int Sum ( int List[], int N ); 其中给定整数存放在数组List[]中,正整数N是数组元素个数。该函数须返回N个List[]元素的和。 裁判测试程序样例: #include <s
阅读全文
摘要:String类是不可变类,即一旦一个String对象被创建以后,包含在这个对象中的字符序列是不可改变的,直至这个对象被销毁。 StringBuffer对象则代表一个字符序列可变的字符串,当一个StringBuffer被创建以后,通过StringBuffer提供的append()、insert()、r
阅读全文
摘要:1.直接用“+”号 2.使用String的方法concat 3.使用StringBuilder的append 4.使用StringBuffer的append
阅读全文
摘要:修改项目下build.gradle文件 在jcenter()前添加mavenCentral() 1 // Top-level build file where you can add configuration options common to all sub-projects/modules.
阅读全文
摘要:Alt+T 搜索文本 Ctrl+1 Quick View导航 空格键 图形视图/汇编视图切换 Shift+F3 切换到Functions窗口 Shift+F4 切换到Names窗口 Shift+F7 切换到Segments窗口 Shift+F12 切换到Strings窗口 ESC退到上一个操作地址
阅读全文
摘要:视图、查看相关: Alt+l 记录 Alt+e 可执行模块 Alt+m 内存 Alt+c cpu(反汇编视图) Ctrl+p 补丁 Alt+k 调用堆栈 Alt+b 断点 Alt+f5 设置窗口总在最前 Alt+o 调试选项 Alt+F3 - 关闭当前窗口。 Ctrl+F4 - 关闭当前窗口。 F5
阅读全文
摘要:原文:https://www.jianshu.com/p/06ae2373f560 1 import threading # 多线程模块 2 import queue # 队列模块 3 import requests 4 from lxml import etree 5 import time 6
阅读全文
摘要:学习《逆向工程核心原理》,在x64下dll注入与代码注入。 dll注入主要用到CreateRemoteThread, HANDLE WINAPI CreateRemoteThread( __in HANDLE hProcess, __in LPSECURITY_ATTRIBUTES lpThread
阅读全文
摘要:《逆向工程核心原理》第30章 记事本WriteFile() API钩取 原文是在x86下,而在x64下函数调用方式为fastcall,前4个参数保存在寄存器中。在原代码基础上进行修改: 1 // myhookdbg.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。 2 //
阅读全文
摘要:EASYHOOK XCTF 4th-WHCTF-2017 1 data=[ 0x61, 0x6A, 0x79, 0x67, 0x6B, 0x46, 0x6D, 0x2E, 0x7F, 0x5F, 2 0x7E, 0x2D, 0x53, 0x56, 0x7B, 0x38, 0x6D, 0x4C, 0x
阅读全文
摘要:2ex1 CISCN-2018-Quals mark 1 import base64 2 3 std_base= "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" 4 mg_base='@,.1fgvw#`/2ehu
阅读全文
摘要:1 // 以管理员身份运行本进程 2 // 1 获取本进程的文件路径. 3 TCHAR path[MAX_PATH] = { 0 }; // 需要初始化 4 DWORD dwPathSize = MAX_PATH; 5 QueryFullProcessImageName(GetCurrentProc
阅读全文

浙公网安备 33010602011771号