剑指offer21

原创 2018年04月17日 11:43:54
#include<iostream>
using namespace std;


bool check(int x) {
	return (x & 1) == 0;
}//判断是否为偶数
void moveNum(int *v,int len,bool(*f)(int)) {
	if (v == NULL || len == 0) return;
	int *p = v, *q = v+len-1;
	while (p<q){
		while (p < q && !f(*p)) p++;
		while (p < q && f(*q)) q--;
		if(p < q) swap(*p,*q);
	}
}

int main()
{
	int m[] = {1,4,7,8,3,10};
	int n[] = {1,3,5,4,8};
	int k[] = {2,4,6,8,1,1};
	moveNum(m, 6, check);
	moveNum(n, 5, check);
	moveNum(k, 6, check);
	return 0;
}


【面试题】剑指offer21--求栈里面的最小的数字

【面试题】剑指offer21--求栈里面的最小的数字
  • LX18792732127
  • LX18792732127
  • 2017-06-29 19:24:14
  • 198

剑指Offer:面试题21——包含min函数的栈(java实现)

问题描述: 定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的min函数。在该栈中,调用min,push及pop的时间复杂度都是O(1). 思路:加入一个辅助栈用来存储最小值集合(这里要...
  • lilianforever
  • lilianforever
  • 2016-07-07 10:58:28
  • 576

剑指offer-面试题21:包含min函数的栈

题目:定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的min函数。在该栈中,调用min、push及pop的时间复杂度都是O(1). 思路:时间复杂度O(1)?刚开始看到觉得不可能实现,对栈...
  • moses1213
  • moses1213
  • 2016-03-31 20:40:13
  • 374

剑指offer 面试题21.22—栈操作以及判断弹出序列

题目: 1.定义栈数据结构,请在该类型中实现一个能够得到栈的最小元素的min函数。在该栈中,调用min、push以及pop的时间复杂度都是O(1)。 2.输入两个整数序列,第一个序列表示栈的压入顺序,...
  • wtyvhreal
  • wtyvhreal
  • 2015-04-30 09:56:35
  • 685

剑指offer第21题(栈的压入、弹出序列)

题目:输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对...
  • u012338652
  • u012338652
  • 2017-10-21 19:40:55
  • 62

剑指offer题21_包含min函数的栈

一.题目:定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的min函数。在该栈中,调用min,push及pop的时间复杂度都是O(1)。二.分析:在面试时,很多应聘者都止步于添加一个变量保存...
  • u010815257
  • u010815257
  • 2018-02-08 17:01:37
  • 13

剑指Offer 名企面试官精讲典型编程题(纪念版)-高清.............

  • 2018年04月09日 21:44
  • 54.05MB
  • 下载

剑指Offer 最新版

  • 2017年09月11日 10:38
  • 104.53MB
  • 下载

算法面试题 剑指offer

  • 2017年11月13日 09:54
  • 20.94MB
  • 下载

剑指offer--面试题21:包含min函数的栈--Java实现

题目描述: 定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的min函数。思路: 如果只用一个元素保存最小的元素,那么当最小的元素被弹出后,就没有办法得到剩余元素中最下的元素。 所以,...
  • u012289407
  • u012289407
  • 2015-06-19 20:24:03
  • 887
收藏助手
不良信息举报
您举报文章:剑指offer21
举报原因:
原因补充:

(最多只允许输入30个字)