Skip to content

Latest commit

 

History

History
94 lines (94 loc) · 9.55 KB

algorithm.md

File metadata and controls

94 lines (94 loc) · 9.55 KB
  1. 封装一个函数,能将字符串“abcdef”逆序为“fedcba”。
  2. 如何让数组中的元素能够随机排序?
  3. 如何用二分查找在一个数组中搜索某个值,判断它是否在该数组中。
  4. 如何将数组中重复的元素只留一个,多余的全部去除掉。
  5. 如何查找数组中重复出现的元素。
  6. 如何找出数组中的最大差值。
  7. 如何求出两个数组的交集。
  8. 给定两段字符串,检测是否是改变字母顺序而成的字符串,例如“mena”是打乱“name”中的字母得到的。
  9. 如何实现链表的逆序。
  10. 如何从无序链表中移除重复项。
  11. 如何计算两个单链表所代表的数之和。
  12. 如何对链表进行重新排序。
  13. 如何找出单链表中的倒数第K个元素。
  14. 如何检测一个较大的单链表是否有环。
  15. 如何把链表相邻元素翻转。
  16. 如何把链表以K个结点为一组进行翻转。
  17. 如何合并两个有序链表。
  18. 如何在只给定单链表中某个结点的指针的情况下删除该结点。
  19. 如何判断两个单链表(无环)是否交叉。
  20. 如何实现栈。
  21. 如何实现队列。
  22. 如何翻转栈的所有元素。
  23. 如何根据入栈序列判断可能的出栈序列。
  24. 如何用O(1)的时间复杂度求栈中最小元素。
  25. 如何用两个栈模拟队列操作。
  26. 如何设计一个排序系统。
  27. 如何把一个有序的整数数组放到二叉树中。
  28. 如何从顶部开始逐层打印二叉树结点数据。
  29. 如何求一棵二叉树的最大子树和。
  30. 如何判断两棵二叉树是否相等。
  31. 如何把二叉树转换为双向链表。
  32. 如何判断一个数组是否是二元查找树后序遍历的序列。
  33. 如何找出排序二叉树上任意两个结点的最近共同父结点。
  34. 如何复制二叉树。
  35. 如何在二叉树中找出与输入整数相等的所有路径。
  36. 如何对二叉树进行镜像反转。
  37. 如何在二叉排序树中找出第一个大于中间值的结点。
  38. 如何在二叉树中找出路径最大的和。
  39. 如何找出数组中唯一的重复元素。
  40. 如何查找数组中元素的最大值和最小值。
  41. 如何找出数组中出现奇数次的数。
  42. 如何找出数组中第K小的数。
  43. 如何求数组中两个元素的最小距离。
  44. 如何求数组中绝对值最小的数。
  45. 如何求数组连续最大和。
  46. 如何找出数组中出现一次的数。
  47. 如何对数组旋转。
  48. 如何在不排序的情况下求数组中的中位数。
  49. 如何对数组进行循环移位。
  50. 如何在有规律的二维数组中进行高效的数据查找。
  51. 如何从三个有序数组中找出它们的公共元素。
  52. 如何对有大量重复数字的数组排序。
  53. 如何求一个字符串的所有排列。
  54. 如何求两个字符串的最长公共子串。
  55. 如何对字符串进行反转。
  56. 如何判断两个字符串是否为换位字符串。
  57. 如何判断两个字符串的包含关系。
  58. 如何对由大小写字母组成的字符数组排序。
  59. 如何判断字符串是否是整数。
  60. 如何实现字符串的匹配。
  61. 如何求字符串里的最长回文子串。
  62. 如何按照给定的字母序列对字符数组排序。
  63. 如何判断一个字符串是否包含重复字符。
  64. 如何统计字符串中连续的重复字符个数。
  65. 如何求最长递增子序列的长度。
  66. 如何让求一个字符串中出现的第一个最长重复子串。
  67. 如何判断一个字符串是否由另外一个字符串旋转得到。
  68. 如何截取包含中文的字符串。
  69. 如何判断一个自然数是否是某个数的二次方。
  70. 如何判断一个数是否为2的n次方。
  71. 如何不使用除法操作符实现两个正整数的除法。
  72. 如何只使用++操作符实现加减乘除运算。
  73. 如何判断1024!末尾有多少个0。
  74. 如何不用比较运算符和if条件语句比较两个数的大小。
  75. 如何求有序数列的第1500个数的值。
  76. 如何把十进制数分别以二进制和十六进制形式输出。
  77. 如何求二进制数中1的个数。
  78. 如何计算一个数的n次方。
  79. 如何在不能使用库函数的条件下计算正数n的算术平方根。
  80. 如何不使用^操作符实现异或运算。
  81. 如何不使用循环输出1〜100。
  82. 如何求正整数n所有可能的整数组合。
  83. 如何等概率地从大小为n的数组中选取m个整数。
  84. 如何组合1、2、5这三个数使其和为100。
  85. 如何从大量的URL中找出相同的。
  86. 如何从大量数据中找出高频词。
  87. 如何在大量的数据中找出不重复的整数。
  88. 如何在大量的数据中判断一个数是否存在。
  89. 如何从5亿个数中找出中位数。
  90. 简单讲一下关于加密算法相关的内容。
  91. 请实现几个你所知的排序算法。
  92. 简要介绍一下RSA。
  93. 介绍一下KMP算法?
  94. 如何实现深度优先搜索和广度优先搜索?