摘要:
背包问题是一个经典的动态规划问题,问题可以描述为:给定一组物品,每种物品都有自己的重量和价格,在限定的总重量内,我们如何选择,才能使得物品的总价格最高。根据给定物品的数量,背包问题又可分为: 1)每种物品只有一件,即01背包问题 2)每种物品不限数量,可选取任意数量,即完全背包问题 3)每种物品的数 阅读全文
摘要:
N皇后问题源于著名的八皇后问题:在8×8格的国际象棋上摆放八个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一斜线上,问有多少种摆法! 将8x8扩展为NxN即为N皇后问题,要解决此问题,最简单的方法就是暴力枚举,此时的时间复杂度为N^2,回溯算法与简单暴力枚举类似,不同点在于当判 阅读全文
摘要:
1.显示字符串 问题:编写一个通用的子程序来实现该功能 子程序名称:show_str 功能:在指定的位置,用指定的颜色,显示一个用0结束的字符串 参数:(dh)=行号(取值范围0~24),(dl)=列号(取值范围0~79),(cl)=颜色,ds:si指向字符串的首地址 返回:无 应用举例:在屏幕的8 阅读全文
摘要:
定义一个MaxSum存储最大值,定义一个currentSum存储当前最大值。当currentSum大于MaxSum时更新MaxSum,当currentSum<0时,则将currentSum记0,重新记录 阅读全文
摘要:
1.利用二维数组保存棋盘上的状态 2.使用一维数组存放皇后的位置,下标表示行,值表示列 阅读全文
摘要:
#include <iostream> using namespace std; // 打印数组 void printArray(int A[], int N) { for (int i = 0; i < N; i++) { cout << A[i] << " "; } } // 冒泡排序 void 阅读全文
摘要:
两种方法:新建链表头插法和就地反转法 阅读全文
摘要:
给定一个 n × n 的二维矩阵表示一个图像。 将图像顺时针旋转 90 度。 说明: 你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。 示例 1: 给定 matrix = [ [1,2,3], [4,5,6], [7,8,9] ], 原地旋转输入矩阵,使其 阅读全文
摘要:
给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。 示例 1: 输入: "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。 示例 2: 输入: "bbbbb" 输出: 1 解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。 阅读全文
摘要:
腾讯2018春招技术类编程题 第一题 第二题(有误) 阅读全文