1奇偶排序
在一个N个整数数组里面,有多个奇数和偶数,设计一个排序算法,令所有的奇数都在偶数的左边
例如输入a={8,4,1,6.7,4,9.6,4}
2叉数降维
设计一个算法,把一个排序二叉树,转化成一个排序的双向链表,要求不能创建任何新的节点,只调整指针指向
java:
class Node{
int key;
Node left,right;
}
Node flatten(Node){
。。。。。。
}
二叉树转双向链表
3 四则运算
现有一四则运算表达式,仅包含+-*/()和0~9数字,请设计一个算法,计算该表达式的值,其中+-只能作为运算符出现,不作为正负号出现在表达式中
请完成calc的代码实现
已有字符串和数字的转换方法(Str2num,num2Str)可直接调用,无须实现
C++:
float str2num(char[] str){....}
char[] num2str(float num){}
float calc(char[] exp){
''''''''
}
java
float str2num(String str){....}
String num2str(float num){.......}
float calc(String exp){
''''''''''''
}
例如输入“1+2*(3-4)”
输出-1
设计测试用例测试Calc函数